-
Notifications
You must be signed in to change notification settings - Fork 2
scratchpad
<PROJECT>_<FILE>_HPP
-
turn skype idle-time off
-
rename windev.rb to nomdev.rb
-
review nomlib's README.md for Markdown syntax
-
fix travis whitelist (i think whitelist branch needs to be 'feature/travis/jeff'
-
ivan: cmake-generated visual studio project files
-
auto-install target with visual studio: http://www.cmake.org/pipermail/cmake/2008-October/024967.html
-
http://www.cmake.org/pipermail/cmake/2012-February/049056.html
-
clean out mail box (jeffrey.carp)
-
install perlbrew (graphicsmagick, findimagedupes)
-
remove & reinstall brew; remove fork & refork brew and apply patches @ ~/tmp onto new branches at fork.
-
push synergys formula?
- sf.net forums setup
http://astyle.sourceforge.net/astyle.html http://synergy-foss.org/wiki/Developer http://synergy-foss.org/wiki/Code_Style
-
nomlib:
- round up all of the enums defined in nomlib and reorganize
- replace custom err messages with SDL_GetError() call when possible
- take nom::priv::FreeSurface, nom::priv::FreeTexture & so on out of priv namespace (leaving said functions at the root of the 'nom' namespace)
- Convert nomlib/math module into templates (precompiled headers would be a plus, too!)
-
SDL2 Logger
http://www.gamedev.net/topic/645255-building-a-library-with-another-library/ http://forums.tigsource.com/index.php?board=27.0 http://www.cmake.org/Wiki/CMake:How_To_Find_Libraries
-
clean up remote branches
look at docs struct (is doxygen html present?)
- http://nvie.com/posts/a-successful-git-branching-model/
- http://www.mantisbt.org/wiki/doku.php/mantisbt:features
http://git.netsurf-browser.org/libparserutils.git/log/ http://www.netsurf-browser.org/projects/libsvgtiny/
https://help.github.com/articles/remove-sensitive-data https://help.github.com/articles/deleting-files
- travis.yml:
- apt-get install -qq
- matrix: allow_failures: gcc
http://www.dreamincode.net/forums/topic/226865-how-to-draw-animation-lines-from-sprite-sheet/
* increase volume on cursor_cancel
* Fix bug in GameOverState with info_box strings longer than the width of the MessageBox
* re-arrange draw & update order in PlayState
* do not show player cursor when player2 is active
* be sure that we are not able to move when in board select mode
* merge in some of the recent GameConfig stuff
- GameConfig
* Use an array "Scaled values" or such that we can then use to calculate automagically ?
* provide resource path name (relative)
* provide resource path type name (relative to resources)
resource paths should be filename only
* add scale_resources option (instead of scale_factor perhaps) and check this bool result for whether or not to scale from within load time?
* calculate scaled size from screen resolution from orig scale values from config.json?
* calculate variable origins at run-time by getProperty & setProperty with new size (assuming origins are always original scale)
* http://stackoverflow.com/questions/6331940/how-to-use-typedef-for-a-generic-class-in-c
> This is how to do a typedef of what we were trying to do inside GameConfig class
- Initializing values with scaled_factor (multiplying by two or more)
* http://en.cppreference.com/w/cpp/utility/initializer_list
* http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml?showone=Brace_Initialization#Brace_Initialization
- nomlib:
-
Current version should be marked v1.0.0 ?
Review References: SDL_version.h
-
Always free surface pointers of type SDL_Surface* with SDL_FreeSurface, even if they are local scope.
- rename:
* Update, Draw, etc. methods lowercase
* Coords to Rect?
* Remove '-inl' suffix from files
* svg reader & writer
* Command-line utility for SpriteSheet generation
* GrayFrame should inherit from IDrawable (remove IFrame) & have MessageBox initialize Gradient as a IDrawable pointer or such
> We might want to look into copy assignment operators for these classes while we are at it ...
* MenuBox
> QTreeWidget [Columns, Items] ... <item> [text, iconOn, iconOff, ...]
> http://harmattan-dev.nokia.com/docs/library/html/qt4/qtreewidget-members.html
* make Cursor methods moveCursorUp, moveCursorDown, ... virtual methods to be re-implemented in ttcards?
> http://harmattan-dev.nokia.com/docs/library/html/qt4/qabstractitemview.html#CursorAction-enum
> http://harmattan-dev.nokia.com/docs/library/html/qt4/qabstractitemview.html#moveCursor
* Integrate Text class into SDL_MessageBox?
* split nomlib up into multiple libs?
* make obtaining joysticks count & name accessor methods?
* make IDrawable inherit from Transformable?
* Finish up fonts example
* Review Font & Text classes further
* Audio Groups? (Similar in concept to Drawables interface)
* icon loader using libicns
- Crackling OGG music playback bug (experienced in Linux) fix:
* [SFML Issue #271](https://github.com/LaurentGomila/SFML/issues/271)
* [SFML Issue #341 ... Alternative Fix](https://github.com/LaurentGomila/SFML/pull/341)
* [libsndfile note](http://www.mega-nerd.com/libsndfile/command.html#SFC_SET_SCALE_FLOAT_INT_READ)
* [Platform architecture detection](http://stackoverflow.com/questions/1505582/determining-32-vs-64-bit-in-c)
* no Update method in TrueTypeFont, BitmapFont?
* nomlib / gzip reader (Resources/magic.mgc.gz)
* https://github.com/LaurentGomila/SFML/wiki/Tutorial%3A-Manage-dynamic-key-binding
- libjson-spirit
* [C++11 Patch for boost::shared_ptr](http://stackoverflow.com/questions/18900730/boostshared-ptrshared-ptrconst-boostshared-ptr-is-implicitly-declared?lq=1)
* http://stackoverflow.com/questions/7964360/using-stdshared-ptr-with-clang-and-libstdc
* [Patch for boost::shared_ptr](https://svn.boost.org/trac/boost/changeset/73202)
* [GCC, clang & Compatibility](http://clang.llvm.org/compatibility.html#deleted-special-func)
- consider using explicit keyword in classes that inherit (such as MessageBox, Sprite, ...) to prohibit improper class usage
* http://stackoverflow.com/questions/121162/what-does-the-explicit-keyword-in-c-mean/121216#121216
* http://www.parashift.com/c++-faq/explicit-ctors.html
- version.[cpp|hpp]
* version.cpp, version.hpp needs to be auto-generated on windows
* once fixed, we need to re-comment version.[cpp|hpp] in nomlib/.gitignore
* version.cpp should be added to other branches .gitignore files
-
Packaging TODO
- release/<VERSION_MAJOR.VERSION_MINOR.VERSION_PATCH>
- branch/master: enable examples, docs, release target, ...
- branch/dev: enable examples, debug, ...
- CMake Multi-Architecture Builds; Windows, Linux, OS X
-
Update Header comments to include license
-
Update README.md
-
Generate README.txt, WELCOME.txt, TODO.txt, BUGS.txt from MD files
-
Create an alias of CMAKE_INSTALL_PREFIX called PREFIX
-
Test UNIVERSAL option
-
Documentation on packaging (extlibs requirements)
-
If a dependency cannot be found, revert to the copy stored in extlibs folder
-
http://www.cmake.org/pipermail/cmake/2009-August/031224.html
-
Revisit Cross Platform Test Driven Development Environment Using CMake Series
- Look at cmake and doxygen and see if this is a better method of using doxygen with cmake
-
MSVC++
- http://573.github.io/blog/2010/10/13/adopt-a-visual-c-plus-plus-express-edition-project-with-cmake/
- http://www.paraview.org/Wiki/CMake_FAQ#How_to_use_MFC_with_CMake
- http://www.cmake.org/Wiki/BuildingWinDLL
-
nomlib
- CPack installation
- pkg-config
- Examples & documentation should not be installed into framework
- produce app bundles for examples?
- nomlib Xcode templates:
- INSTALL_XCODE4_TEMPLATES (see SFML cmake config?)
- nomlib App & CLT xcode templates:
We need to include libSDL & Cocoa frameworks along with SDLMain.m, /usr/local/include/SDL header file search path, fix shell script in nomlib app TemplateInfo.plist
-
ttcards
- Bugs
- Binary is not copied over when using CMAKE_INSTALL_PREFIX
- Fix CPack installations
- Bugs
- release/<VERSION_MAJOR.VERSION_MINOR.VERSION_PATCH>
// /usr/local/include/SDL/SDL_events.h
enum Event
{
Quit = SDL_QUIT,
KeyDown = SDL_KEYDOWN,
MouseDown = SDL_MOUSEBUTTONDOWN,
MouseUp = SDL_MOUSEBUTTONUP,
JoystickButtonDown = SDL_JOYBUTTONDOWN,
JoystickButtonUp = SDL_JOYBUTTONUP,
JoystickAxis = SDL_JOYAXISMOTION,
User = SDL_USEREVENT
};
// /usr/local/include/SDL/SDL_keysym.h
enum Key
{
One = SDLK_1,
Return = SDLK_RETURN,
Enter = Key_Return,
J = SDLK_j
};
// /usr/local/include/SDL/SDL_mouse.h
enum MouseButton
{
Left = SDL_BUTTON_LEFT,
Middle = SDL_BUTTON_MIDDLE,
Right = SDL_BUTTON_RIGHT,
};
// /usr/local/include/SDL/SDL_video.h
enum Video
{
Software = SDL_SWSURFACE,
RLE = SDL_RLEACCEL,
Resizable = SDL_RESIZABLE,
DoubleBuffer = SDL_DOUBLEBUF
};
nom::Event::Quit
nom::Key::One
nom::MouseButton::Middle
-
http://msdn.microsoft.com/en-us/library/2dzy4k6e(v=vs.80).aspx
-
http://thbecker.net/articles/rvalue_references/section_01.html
-
http://stackoverflow.com/questions/180601/using-super-in-c
typedef className super;
-
http://agentultra.com/sdl-and-modern-c-plus-plus-images.html
shared_ptr
-
http://msdn.microsoft.com/en-us/library/vstudio/hh279676.aspx
-
http://www.stroustrup.com/C++11FAQ.html#std-unique_ptr
unique_ptr usage
-
http://www.pygame.org/docs/ref/sprite.html#pygame.sprite.OrderedUpdates
Groups API
-
http://www.dreamincode.net/forums/topic/179429-sdl-sprite-sheet/
-
Sprite Sheets
-
https://code.google.com/p/sdl-layer/wiki/API
Sprite Layers
-
http://lazyfoo.net/SDL_tutorials/lesson31/index.php
Flipping pixels
-
http://www.sdltutorials.com/the-ins-and-outs-and-overlays-of-alpha-blending
- SDL transparency gotchas with color keying & alpha masks
- http://www.gamedev.net/topic/357847-sdl-gradient/
- http://en.literateprograms.org/Linear_gradient_(C)
- http://www.gamedev.net/topic/344763-better-gradients-resolved/
-
http://www.sdltutorials.com/sdl-soundbank?CommentsPage=1#Comments
-
http://heavydeck.wordpress.com/2012/04/03/toying-with-sdl-and-sdl_mixer/
SDL_mixer, Input Handling
-
Loading files from memory (such as in the case of an archive)
-
~/Projects/hax/libsha1.git
-
http://forum.codecall.net/topic/56591-bit-flags-tutorial-with-example/
-
http://stackoverflow.com/questions/6607627/bitmask-switch-statement
- CMake v2.8.8 Docs
- CMake Tutorial
- http://www.elpauer.org/stuff/learning_cmake.pdf
- http://www.vtk.org/Wiki/CMake/Examples
- http://www.cmake.org/Wiki/CMake_Useful_Variables
http://accountingplusplus.blogspot.com/2011/01/cmake-install-linux-and-os-x.html
-
http://stackoverflow.com/questions/1596945/building-osx-app-bundle
-
TODO: investigate dylibbundler cmd-line app
-
cd build; make clean; rm CMakeCache.txt; cmake -G Xcode ..
-
repeat for gamelib
-
open ttcards.xcodeproj;
-
Add File SDLmain.m into project from /Library/Frameworks/SDL.frameworks/devel-lite
-
Add SDLmain.m into Build Phase "Compile Sources"
-
~/Downloads/lessons/osx_appfiles/
Example of Makefile and setRelativePath (different from current implementation)
-
http://stackoverflow.com/questions/5131015/creating-an-application-bundle-on-osx-with-eclipse-c
-
py2app
-
Jar Bundler.app (Apple's Java for OS X 2012-006 Developer Package from 2012-10-16)
-
https://developer.mozilla.org/en-US/docs/XULRunner/Creating_custom_app_bundles_for_Mac_OS_X
Potential design / class modeling idea
Signal/Slot event systems?
- Observer Design Pattern
-
Callbacks, virtual functions
-
http://sdl.beuc.net/sdl.wiki/SDL_OpenAudio
SDL_OpenAudio
-
OpenAL Frameworks are broken after installing SDK
/Users/jeff/Applications/Developer/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/OpenAL.framework/
-
~/docs/OpenAL_Programmers_Guide.pdf
OpenAL introduction & API reference
-
http://connect.creativelabs.com/openal/OpenAL%20Wiki/EXT_vorbis.aspx
OpenAL Extension for OGG media
-
http://www.david-amador.com/2011/06/playing-sound-using-openal/
OpenAL Example
-
audio mixing
-
https://gist.github.com/take-cheeze/4233185
OpenAL and libsndfile example
-
https://github.com/kripken/emscripten/wiki/Emscripten-browser-environment
Introduction
-
http://sdl.5483.n7.nabble.com/quot-SDL-AddTimer-quot-From-Within-A-C-Class-td19034.html
wrapping C++ classes into C functions
-
~/local/src/emscripten/tests/emscripten_api_browser_infloop.cpp
wrapping classes for emcc function calls
nom class design ideas
- Flyweight Design:
http://sourcemaking.com/design_patterns/flyweight http://sourcemaking.com/design_patterns/flyweight/cpp/2
Potential design ideas
Could we have cursor object poll available objects or perhaps more so "interested" (think: selected?) objects for their XY coords and if intersection occurs, toggle a value within cursor object to be checked ... on the flip side ( said polled objects ), we could check to see if said cursor object (toggled?) value is set, and if so ... complete an action
- http://stackoverflow.com/questions/5450159/type-erasure-techniques
-
http://www.cplusplus.com/articles/oz18T05o/
void* usage AKA decoupling of pure abstract classes; other options include: templates and std::shared_ptr
- boost::any
-
http://www-flc.desy.de/flc/flcwiki/How%20to%20document%20your%20code%20using%20doxygen
-
http://www.codeproject.com/Articles/3528/10-Minutes-to-document-your-code
-
http://www-numi.fnal.gov/offline_software/srt_public_context/WebDocs/doxygen-howto.html
-
http://www.ibm.com/developerworks/aix/library/au-learningdoxygen/
-
https://github.com/alecthomas/entityx
entity component system
-
entity component system example
-
http://courses.cms.caltech.edu/cs11/material/cpp/donnie/cpp-ops.html
-
http://stackoverflow.com/questions/4421706/operator-overloading
operator overloading
- Creating Custom Binary File Format
- Practical Parsing Binary Files
- http://stackoverflow.com/questions/13007027/parsing-a-binary-message-in-c-any-lib-with-examples
- http://www.drdobbs.com/bitstream-parsing-in-c/184402014
- http://stackoverflow.com/questions/321423/parsing-binary-data-in-c
- https://github.com/LaurentGomila/SFML/wiki/Source%3A-Settings-Parser
- http://www.tripletriadflashonline.com/en/howtoplay
- http://ttadvance.ca/gamerulesp.php
- http://www.finalfantasykingdom.net/finalfantasyviiitripletriad.php
- travis-lint
- local travis ci vm w/ vagrant
- https://github.com/travis-ci/travis-boxes
- http://docs.vagrantup.com/v2/getting-started/index.html
- http://www.cplusplus.com/forum/articles/13355/
- http://www.gnu.org/software/libc/manual/html_node/Getopt-Long-Option-Example.html#Getopt-Long-Option-Example
-
http://en.wikibooks.org/wiki/OpenGL_Programming/Modern_OpenGL_Tutorial_Text_Rendering_01
-
http://stackoverflow.com/questions/3229391/sdl-sdl-ttf-transparent-blended-text
-
https://github.com/joewreschnig/ttf-to-distfield
http://yukkurigames.com/yuu/yuu/data/fonts/default.png http://yukkurigames.com/yuu/demos/pong/
-
http://www.openfl.org/developer/forums/feature-requests/bitmap-fonts/re-bitmap-fonts1/
-
http://www.codeproject.com/Tips/533869/How-To-Draw-Text-Aligned-In-A-Rectangle-XNA
- cocos2d
- cocos2d: labels
- cocos2d-iphone: labelsprog_guide:labels
- [cocos2d-iphone: multiline labels](http://www.cocos2d-iphone.org/wiki/doku.php/tips:multiline_label
- cocos2d-iphone: BitmapFont Atlas
- cocos2d