Programming resources: Difference between revisions
Jump to navigation
Jump to search
m (→C++ References) |
m (out of date: basically unmaintained, and does not even contain any up to date C++/OSG tutorials, despite those being freely available online ... either to be updated or cleaned up/deleted ?) |
||
(47 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
= | {{Out of date}} | ||
* http://www. | |||
Please note that as of 04/2009, the "aviation standards & information" section has been moved to a new page [[Aviation Standards & Information]]. | |||
This also applies to the "Free GIS data" section which can now be found at [[Scenery Development Resources]]. | |||
As of 09/2009, there's also a new section titled [[Ground Traffic Simulation Resources]] specifically dedicated to collecting resources related to improving FlightGear's support for modeling ground traffic. As of 03/2010 the section on Shaders has been moved to a dedicated page titled [[GLSL Shader Programming Resources]] | |||
= Programming & Open Source = | |||
* [http://www.freenetpages.co.uk/hp/alan.gauld/ Learning to program] | |||
* [http://nongnu.askapache.com/pgubook/ProgrammingGroundUp-1-0-booksize.pdf Programming from the ground up] (PDF) | |||
* [http://samizdat.mines.edu/howto/HowToBeAProgrammer.html How to be a programmer] | |||
* [http://codebetter.com/media/p/179694.aspx Foundations of Programming] (ebook) | |||
* [http://producingoss.com/ Producing OSS] | |||
= Source Code Management = | = Source Code Management = | ||
* [http://www.ericsink.com/scm/source_control.html Intro to Source Control] | * [http://www.ericsink.com/scm/source_control.html Intro to Source Control] | ||
* [http://www-cs-students.stanford.edu/~blynn/gitmagic/ Git Magic - Introduction] | |||
* http://git-scm.com/book | |||
* http://ftp.newartisans.com/pub/git.from.bottom.up.pdf | |||
= Software Engineering = | = Software Engineering = | ||
* [http://www.gotw.ca/publications/index.htm Guru of the Week] | |||
* [http://www.gotw.ca/publications/concurrency-ddj.htm The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software] | * [http://www.gotw.ca/publications/concurrency-ddj.htm The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software] | ||
* [http:// | * [http://www.infoq.com/presentations/effective-api-design How to Design a Good API and Why it Matters] [http://lcsd05.cs.tamu.edu/slides/keynote.pdf] | ||
* [http://decoy.iki.fi/texts/filefd/filefd A brief look at file format design] | * [http://decoy.iki.fi/texts/filefd/filefd A brief look at file format design] | ||
* [http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=43487 QuickStudy: Application Programming Interface (API)] | * [http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=43487 QuickStudy: Application Programming Interface (API)] | ||
* http://arstechnica.com/articles/paedia/cpu/valve-multicore.ars | * http://arstechnica.com/articles/paedia/cpu/valve-multicore.ars | ||
* [http://code.google.com/edu/parallel/dsd-tutorial.html Introduction to Distributed System Design] | * [http://code.google.com/edu/parallel/dsd-tutorial.html Introduction to Distributed System Design] | ||
== Scripting == | |||
* [http://computerlinguist.com/2008/09/04/use-scripting-languages-when-possible/ Use Scripting Languages when possible] | |||
* [http://www.tcl.tk/doc/scripting.html Scripting: Higher Level Programming for the 21st Century] | |||
* [http://www.osnews.com/story/7038/On_Scripting_Languages On Scripting Languages] | |||
== Pointer Basics == | == Pointer Basics == | ||
* [http://cslibrary.stanford.edu/104/ Binky Pointer Fun Video] | * [http://cslibrary.stanford.edu/104/ Binky Pointer Fun Video] | ||
* [http://www.slideshare.net/emartinez.romero/first-look-at-pointers First Look at Pointers] | |||
* [http://www.slideshare.net/emartinez.romero/general-talk-on-pointers-1317108 General Talk on Pointers] | |||
* [http://www.slideshare.net/emartinez.romero/more-pointers-and-arrays Pointers and Arrays] | |||
* [http://www.slideshare.net/udekel/introduction-to-pointers-and-memory-management-in-c Introduction to Pointers & Memory Managements] | |||
* [http://www.augustcouncil.com/~tgibson/tutorial/ptr.html Pointers in C and C++] | * [http://www.augustcouncil.com/~tgibson/tutorial/ptr.html Pointers in C and C++] | ||
* [http://pweb.netcom.com/~tjensen/ptr/pointers.htm A TUTORIAL ON POINTERS AND ARRAYS IN C] | * [http://pweb.netcom.com/~tjensen/ptr/pointers.htm A TUTORIAL ON POINTERS AND ARRAYS IN C] | ||
* [http://andesengineering.com/OSG_ProducerArticles/RefPointers/RefPointers.html Using osg::ref_ptr] | * [http://andesengineering.com/OSG_ProducerArticles/RefPointers/RefPointers.html Using osg::ref_ptr] | ||
== Optimization == | == Optimization == | ||
* [http://lgdc.sunsite.dk/articles/23.html Optimization Basics] | * [http://lgdc.sunsite.dk/articles/23.html Optimization Basics] | ||
* [http://www.agner.org/optimize/optimizing_cpp.pdf Optimizing C++] (http://www.agner.org/optimize/) | * [http://www.agner.org/optimize/optimizing_cpp.pdf Optimizing C++] (http://www.agner.org/optimize/) | ||
* [http://www.tantalon.com/pete/cppopt/main.htm C++ Optimization Strategies and Techniques] | |||
* [http://www.crowl.org/Lawrence/programming/Bentley82.html Writing Efficient Programs] | |||
= Programming - Background knowledge = | = Programming - Background knowledge = | ||
* [http://mindview.net/CDs/ThinkingInC/beta3 Interactive Multimedia Flash Course, introducing C-family of programming languages] | * [http://mindview.net/CDs/ThinkingInC/beta3 Interactive Multimedia Flash Course, introducing C-family of programming languages] | ||
* [http://www.youtube.com/view_play_list?p=FE6E58F856038C69 Introduction to Programming using C++ (CS106B Stanford University)] (~ 30 videos teaching programming and C++) | |||
== C++ Courses == | == C++ Courses == | ||
* [http://www.itee.uq.edu.au/~comp3300/Resources/C_C++_notes.pdf C++ in 5 days] [http://glmd.110mb.com/sem1/files/C-5days.pdf] | |||
* http://www.learncpp.com/ | |||
* http://www.cprogramming.com/ | * http://www.cprogramming.com/ | ||
* http://www.cplusplus.com | * http://www.cplusplus.com | ||
Line 39: | Line 68: | ||
* Youtube Contents: | * Youtube Contents: | ||
** [http://youtube.com/view_play_list?p=1D6727247CA35794 An Introduction to C++] | |||
** [http://youtube.com/user/reconnetworks A number of introductory C++ Tutorials] | ** [http://youtube.com/user/reconnetworks A number of introductory C++ Tutorials] | ||
** [http://youtube.com/watch?v=mrvAqvtWYb4 Getting C++ Threads right] | ** [http://youtube.com/watch?v=mrvAqvtWYb4 Getting C++ Threads right] | ||
Line 65: | Line 95: | ||
* [http://www.itstudy8.org/showbook.asp?BookID=1507 Professional C++] | * [http://www.itstudy8.org/showbook.asp?BookID=1507 Professional C++] | ||
* [http://www.freebooksource.com/c-c++.htm Misc other freely available books] | * [http://www.freebooksource.com/c-c++.htm Misc other freely available books] | ||
* [http://www.booktraining.net/ BookTraining.net] | |||
== C++ References == | == C++ References == | ||
Line 71: | Line 102: | ||
* [http://yosefk.com/c++fqa/ C++ Frequently Questioned Answers] | * [http://yosefk.com/c++fqa/ C++ Frequently Questioned Answers] | ||
* http://www-h.eng.cam.ac.uk/help/tpl/languages/C++.html | * http://www-h.eng.cam.ac.uk/help/tpl/languages/C++.html | ||
* [http://www.4p8.com/eric.brasseur/cppcen.html C++ for C users] | |||
== C++/STL == | == C++/STL == | ||
* [http://linuxsoftware.co.nz/cppcontainers.html C++ Cheat Sheet] (Usage of STL containers) | |||
* http://www.sgi.com/tech/stl/ | * http://www.sgi.com/tech/stl/ | ||
* STL: http://www.dinkumware.com/manuals/default.aspx | * STL: http://www.dinkumware.com/manuals/default.aspx | ||
* http://www.yolinux.com/TUTORIALS/LinuxTutorialC++STL.html | * http://www.yolinux.com/TUTORIALS/LinuxTutorialC++STL.html | ||
* http://www.halpernwightsoftware.com/stdlib-scratch/quickref.html | * http://www.halpernwightsoftware.com/stdlib-scratch/quickref.html | ||
== Graphics Programming == | |||
* [http://www.arcsynthesis.org/gltut/ Learning Modern 3D Graphics Programming] | |||
* [http://www.gamedev.net/reference/articles/article1698.asp Graphics Programming Black Book] | |||
* [http://tog.acm.org/resources/shaderx/ ShaderX] | |||
* [https://www.edx.org/course/uc-berkeley/cs-184-1x/foundations-computer-graphics/1003 Foundations of Computer Graphics] | |||
== Game Programming related == | == Game Programming related == | ||
Line 89: | Line 128: | ||
* http://www.itstudy8.org/ProgrammingGeneral.asp | * http://www.itstudy8.org/ProgrammingGeneral.asp | ||
== General OpenGL Resources == | == General [[OpenGL]] Resources == | ||
* [http://www.falloutsoftware.com/tutorials/gl/gl8.htm OpenGL Light and Polygon Surface Tutorials] | |||
* http://www.opengl.org/documentation/red_book/ - Learning [[OpenGL]] | * http://www.opengl.org/documentation/red_book/ - Learning [[OpenGL]] | ||
* http://www.cs.mu.oz.au/380/2007/slides/OpenGL_6up.pdf | * http://www.cs.mu.oz.au/380/2007/slides/OpenGL_6up.pdf | ||
Line 107: | Line 147: | ||
** [http://www.sjbaker.org/steve/omniv/love_your_z_buffer.html Learning to Love your Z-Buffer] | ** [http://www.sjbaker.org/steve/omniv/love_your_z_buffer.html Learning to Love your Z-Buffer] | ||
** [http://www.sjbaker.org/steve/omniv/matrices_can_be_your_friends.html matrices can be your friend] | ** [http://www.sjbaker.org/steve/omniv/matrices_can_be_your_friends.html matrices can be your friend] | ||
== 3D Maths == | == 3D Maths == | ||
Line 131: | Line 154: | ||
== OSG/[[OpenSceneGraph]] related == | == OSG/[[OpenSceneGraph]] related == | ||
* http://www.openscenegraph.org/projects/osg/wiki/Support/GettingStarted | |||
* [http://www.lamce.ufrj.br/grva/data/labcogsdk/download/extras/osg/openscenegraph.pdf A brief introduction to OSG] (Recommended!) | * [http://www.lamce.ufrj.br/grva/data/labcogsdk/download/extras/osg/openscenegraph.pdf A brief introduction to OSG] (Recommended!) | ||
* [http://www.lulu.com/items/volume_51/767000/767629/3/print/OSGQSG.pdf OpenSceneGraph QuickStart Guide] (Recommended!) | * [http://www.lulu.com/items/volume_51/767000/767629/3/print/OSGQSG.pdf OpenSceneGraph QuickStart Guide] (Recommended!) [http://www.lulu.com/items/volume_51/767000/767629/3/print/OSGQSG.pdf] [http://syntheractive.com/developer/downloads/OSGQSG.pdf] | ||
* https://www.packtpub.com/books/content/openscenegraph-managing-scene-graph | |||
* https://www.packtpub.com/books/content/openscenegraph-advanced-scene-graph-components | |||
* http://merlin.fit.vutbr.cz/wiki/index.php/OSG_knowledge_base | |||
* http://thermalpixel.github.io/osg/2014/02/15/rtt-with-slave-cameras.html | |||
* [http://www.denizyuret.com/bib/wang/Wang2010osg/OpenSceneGraph.3.0.Beginners.Guide.Dec.2010.pdf OpenSceneGraph Beginners Guide] | |||
* [ftp://148.187.224.51/out/uvaretto/GraphicsReference/Lecture2-OSG_Advanced.pdf OpenSceneGraph Advanced] | * [ftp://148.187.224.51/out/uvaretto/GraphicsReference/Lecture2-OSG_Advanced.pdf OpenSceneGraph Advanced] | ||
* http://www.vis-sim.com/osg/osg_faq_1.htm | * http://www.vis-sim.com/osg/osg_faq_1.htm | ||
Line 138: | Line 167: | ||
* http://andesengineering.com/OSG_ProducerArticles/RefPointers/RefPointers.html | * http://andesengineering.com/OSG_ProducerArticles/RefPointers/RefPointers.html | ||
* http://www.cs.clemson.edu/~malloy/courses/3dgames-2007/tutor/ | * http://www.cs.clemson.edu/~malloy/courses/3dgames-2007/tutor/ | ||
* http://beefdev.blogspot.de/2012/01/render-to-texture-in-openscenegraph.html | |||
* http://www.palomino3d.org/pal/openscenegraph.php | |||
* http://sourceforge.net/apps/mediawiki/delta3d/index.php?title=Tutorial_Render_To_Texture | |||
* http://www.openscenegraph.org/documentation/OpenSceneGraphReferenceDocs/annotated.html | |||
* [http://mew.cx/osg_glsl_july2005.pdf GLSL Shading with OpenSceneGraph] | |||
== Communities == | == Communities == | ||
Line 146: | Line 180: | ||
* http://cboard.cprogramming.com/forumdisplay.php?f=3 | * http://cboard.cprogramming.com/forumdisplay.php?f=3 | ||
* http://www.cpp-home.com/forum/index.php | * http://www.cpp-home.com/forum/index.php | ||
* [http://www.cpplc.net/forum/ C++ Learning Community] | |||
= Networking = | = Networking = | ||
Line 158: | Line 193: | ||
* [http://www.ncsa.uiuc.edu/UserInfo/Resources/Hardware/IBMp690/IBM/usr/share/man/info/en_US/a_doc_lib/aixbman/prftungd/2365c93.htm Performance Management Guide-Tuning TCP and UDP Performance] | * [http://www.ncsa.uiuc.edu/UserInfo/Resources/Hardware/IBMp690/IBM/usr/share/man/info/en_US/a_doc_lib/aixbman/prftungd/2365c93.htm Performance Management Guide-Tuning TCP and UDP Performance] | ||
* [http://www.uic.rsu.ru/doc/inet/tcp_stevens/ TCP/IP Illustrated, Volume 1] | * [http://www.uic.rsu.ru/doc/inet/tcp_stevens/ TCP/IP Illustrated, Volume 1] | ||
* [http://www.linuxhowtos.org/C_C++/socket.htm Sockets Tutorial] | |||
== Unix Sockets == | |||
* [http://users.actcom.co.il/~choo/lupg/tutorials/internetworking/internet-theory.html Network Programming under Unix Systems] | |||
* [http://www.kohala.com/start/unpv12e.html Unix Network Programming] | |||
* [http://www.faqs.org/docs/artu/index.html The Art of Unix Programming] | |||
* [http://www.frostbytes.com/~jimf/papers/sockets/sockets.html BSD Sockets: a quick and dirty primer] | |||
== Windows Sockets == | |||
* [http://www.tangentsoft.net/wskfaq/ Windosck Programmer's FAQ] | |||
* [http://www.sockets.com/lamelist.htm The Windows Sckets Lame List] | |||
== Protocol Design == | |||
* [http://xmpp.org/extensions/xep-0134.html#guidelines Protocol Design Guidelines] | |||
* [http://tools.ietf.org/html/rfc4101 Writing Protocol Models] | |||
== Multiplayer Design & Programming == | == Multiplayer Design & Programming == | ||
=== Basics === | === Basics === | ||
* [http://www.gamedev.net/community/forums/showfaq.asp?forum_id=15 GameDev.net Multiplayer FAQ] | |||
* [http://trac.bookofhook.com/bookofhook/trac.cgi/wiki/IntroductionToMultiplayerGameProgramming Introduction to Multiplayer Game Programming] | * [http://trac.bookofhook.com/bookofhook/trac.cgi/wiki/IntroductionToMultiplayerGameProgramming Introduction to Multiplayer Game Programming] | ||
* [http://www.gamedev.net/reference/articles/article721.asp Introduction: Designing Multiplayer Games] | * [http://www.gamedev.net/reference/articles/article721.asp Introduction: Designing Multiplayer Games] | ||
Line 172: | Line 222: | ||
* [http://users.cs.cf.ac.uk/O.F.Rana/data-comms/gaming.pdf QoS Issues for Multiplayer Gaming] | * [http://users.cs.cf.ac.uk/O.F.Rana/data-comms/gaming.pdf QoS Issues for Multiplayer Gaming] | ||
* [http://gamedev.cs.cmu.edu/spring2007/slides/15-466_17_Networking_And_Multiplayer_Games.pdf Networking and Multiplayer Games] | * [http://gamedev.cs.cmu.edu/spring2007/slides/15-466_17_Networking_And_Multiplayer_Games.pdf Networking and Multiplayer Games] | ||
* [http://unreal.epicgames.com/Network.htm Unreal Networking Engine] | |||
* [http://trac.bookofhook.com/bookofhook/trac.cgi/wiki/Quake3Networking Quake3 Networking Model] | |||
* [http://www.flipcode.com/articles/network_part01.shtml Network Game Programming (flipcode)] | |||
* [http://ponto-dot.com/dftd/files/aspects_of_networking_in_multiplayer_games.pdf Aspects of Networking in Multiplayer Games] | |||
* [http://ponto-dot.com/dftd/files/design_of_comm_in_online_games.pdf Design of communications, competition and collaboration in online games (pdf)] | |||
* [http://ponto-dot.com/dftd/files/scalable_massive_multiplayer_games.pdf Scalable massive multiplayer games (pdf)] | |||
* [http://ponto-dot.com/dftd/files/multiplayer_tricks_of_the_trade-GDC2004.pdf Multiplayer Tips and Tricks from GDC 2004] | |||
=== State Prediction === | === State Management & Prediction === | ||
* [http://expertvoices.nsdl.org/cornell-cs322/2008/03/09/network-state-interpolation/ Network State Interpolation] | * [http://expertvoices.nsdl.org/cornell-cs322/2008/03/09/network-state-interpolation/ Network State Interpolation] | ||
* [http://www.gamasutra.com/features/19970919/aronson_01.htm Dead Reckoning:Latency Hiding for Networked Games] | * [http://www.gamasutra.com/features/19970919/aronson_01.htm Dead Reckoning:Latency Hiding for Networked Games] | ||
Line 180: | Line 237: | ||
* [http://www.gamedev.net/reference/articles/article876.asp Statistical Client Prediction] | * [http://www.gamedev.net/reference/articles/article876.asp Statistical Client Prediction] | ||
* [http://gafferongames.com/game-physics/networked-physics/ Networked Physics] | * [http://gafferongames.com/game-physics/networked-physics/ Networked Physics] | ||
* [http://prisms.cs.umass.edu/brian/pubs/baughman.infocom01.pdf Cheat-Proof Playout for Centralized and Distributed Online Games] | |||
=== Compression / Effiency === | === Compression / Effiency === | ||
Line 185: | Line 243: | ||
* [http://gamasutra.com/features/20000621/aronson_01.htm Using Groupings for Networked Gaming] | * [http://gamasutra.com/features/20000621/aronson_01.htm Using Groupings for Networked Gaming] | ||
* [http://www.gamasutra.com/view/feature/2948/distributing_object_state_for_.php?page=1 Distributing Object State for Networked Games Using Object Views] | * [http://www.gamasutra.com/view/feature/2948/distributing_object_state_for_.php?page=1 Distributing Object State for Networked Games Using Object Views] | ||
* [http://warriors.eecs.umich.edu/games/papers/netgames02-tss.pdf An Efficient Synchronization Mechanism for Mirrored Game Architectures] (pdf) | |||
=== Security === | === Security === | ||
* [http://www.gamasutra.com/features/19970707/security.htm Security in Online Games] | * [http://www.gamasutra.com/features/19970707/security.htm Security in Online Games] | ||
Line 193: | Line 253: | ||
* http://www.ogre3d.org/wiki/index.php/Libraries#Networking | * http://www.ogre3d.org/wiki/index.php/Libraries#Networking | ||
=See also= | = See also = | ||
*[[Aircraft Information Resources]] | * [[Aircraft Information Resources]] | ||
*[[Modeling Resources]] | * [[Modeling Resources]] | ||
[[Category: | [[Category:Lists]] | ||
[[Category: | [[Category:Resources]] | ||
[[Category:Core developer documentation]] |
Revision as of 11:16, 25 November 2020
This article or section contains out-of-date information
Please help improve this article by updating it. There may be additional information on the talk page. |
Please note that as of 04/2009, the "aviation standards & information" section has been moved to a new page Aviation Standards & Information. This also applies to the "Free GIS data" section which can now be found at Scenery Development Resources.
As of 09/2009, there's also a new section titled Ground Traffic Simulation Resources specifically dedicated to collecting resources related to improving FlightGear's support for modeling ground traffic. As of 03/2010 the section on Shaders has been moved to a dedicated page titled GLSL Shader Programming Resources
Programming & Open Source
- Learning to program
- Programming from the ground up (PDF)
- How to be a programmer
- Foundations of Programming (ebook)
- Producing OSS
Source Code Management
- Intro to Source Control
- Git Magic - Introduction
- http://git-scm.com/book
- http://ftp.newartisans.com/pub/git.from.bottom.up.pdf
Software Engineering
- Guru of the Week
- The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software
- How to Design a Good API and Why it Matters [1]
- A brief look at file format design
- QuickStudy: Application Programming Interface (API)
- http://arstechnica.com/articles/paedia/cpu/valve-multicore.ars
- Introduction to Distributed System Design
Scripting
- Use Scripting Languages when possible
- Scripting: Higher Level Programming for the 21st Century
- On Scripting Languages
Pointer Basics
- Binky Pointer Fun Video
- First Look at Pointers
- General Talk on Pointers
- Pointers and Arrays
- Introduction to Pointers & Memory Managements
- Pointers in C and C++
- A TUTORIAL ON POINTERS AND ARRAYS IN C
- Using osg::ref_ptr
Optimization
- Optimization Basics
- Optimizing C++ (http://www.agner.org/optimize/)
- C++ Optimization Strategies and Techniques
- Writing Efficient Programs
Programming - Background knowledge
- Interactive Multimedia Flash Course, introducing C-family of programming languages
- Introduction to Programming using C++ (CS106B Stanford University) (~ 30 videos teaching programming and C++)
C++ Courses
- C++ in 5 days [2]
- http://www.learncpp.com/
- http://www.cprogramming.com/
- http://www.cplusplus.com
- http://www.macs.hw.ac.uk/~rjp/Coursewww/CPPwww/index.html
- http://www.thefreecountry.com/documentation/onlinecpp.shtml
- http://www.gamedev.net/reference/list.asp?categoryid=20#214
- http://www.cpp4u.com/
- C++ related presentations:
- Youtube Contents:
- Other Videos:
C++ eBooks
- http://www.computer-books.us/cpp.php
- http://www.mycplus.com/c.asp?ID=15
- C++ Wikibook
- http://www.freetechbooks.com/forum-3.html
- http://www.techbooksforfree.com/ccpp.shtml
- http://www.freeprogrammingresources.com/cppbooks.html
- http://www.docnmail.com/learn/CCpp.htm
- Data Structures and Algorithms with Object-Oriented Design Patterns in C++
- C++ Essentials
- Guide to C++
- C++ Programming for the absolute beginner
- Introduction to Game Programming with C++
- C++ for Mathematicians: An Introduction for STudents and Professionals
- C++ How to Program 5th Edition
- Professional C++
- Misc other freely available books
- BookTraining.net
C++ References
- http://www.informit.com/guides/guide.aspx?g=cplusplus
- C++ FAQ Lite
- C++ Frequently Questioned Answers
- http://www-h.eng.cam.ac.uk/help/tpl/languages/C++.html
- C++ for C users
C++/STL
- C++ Cheat Sheet (Usage of STL containers)
- http://www.sgi.com/tech/stl/
- STL: http://www.dinkumware.com/manuals/default.aspx
- http://www.yolinux.com/TUTORIALS/LinuxTutorialC++STL.html
- http://www.halpernwightsoftware.com/stdlib-scratch/quickref.html
Graphics Programming
- Learning Modern 3D Graphics Programming
- Graphics Programming Black Book
- ShaderX
- Foundations of Computer Graphics
- Game Programming Wiki
- http://www.itstudy8.org/c++.asp
- http://www.itstudy8.org/GameProgramming.asp
- http://www.itstudy8.org/gameGeneral.asp
- http://www.gamedev.net/reference/list.asp?categoryid=45
Programming General
General OpenGL Resources
- OpenGL Light and Polygon Surface Tutorials
- http://www.opengl.org/documentation/red_book/ - Learning OpenGL
- http://www.cs.mu.oz.au/380/2007/slides/OpenGL_6up.pdf
- http://www.opengl.org/documentation/blue_book/ - OpenGL Reference Manual
- http://www.gamedev.net/reference/list.asp?categoryid=31
- http://www.itstudy8.org/OpenGL.asp
- http://en.wikibooks.org/wiki/Opengl
- Youtube Introductions to OpenGL:
- Columns
3D Maths
- http://www.openscenegraph.org/projects/osg/wiki/Support/GettingStarted
- A brief introduction to OSG (Recommended!)
- OpenSceneGraph QuickStart Guide (Recommended!) [3] [4]
- https://www.packtpub.com/books/content/openscenegraph-managing-scene-graph
- https://www.packtpub.com/books/content/openscenegraph-advanced-scene-graph-components
- http://merlin.fit.vutbr.cz/wiki/index.php/OSG_knowledge_base
- http://thermalpixel.github.io/osg/2014/02/15/rtt-with-slave-cameras.html
- OpenSceneGraph Beginners Guide
- OpenSceneGraph Advanced
- http://www.vis-sim.com/osg/osg_faq_1.htm
- http://faculty.nps.edu/jasullivan/osgtutorials/
- http://andesengineering.com/OSG_ProducerArticles/RefPointers/RefPointers.html
- http://www.cs.clemson.edu/~malloy/courses/3dgames-2007/tutor/
- http://beefdev.blogspot.de/2012/01/render-to-texture-in-openscenegraph.html
- http://www.palomino3d.org/pal/openscenegraph.php
- http://sourceforge.net/apps/mediawiki/delta3d/index.php?title=Tutorial_Render_To_Texture
- http://www.openscenegraph.org/documentation/OpenSceneGraphReferenceDocs/annotated.html
- GLSL Shading with OpenSceneGraph
Communities
(Forums, Newsgroups, Mailing Lists & Chat rooms)
- http://episteme.arstechnica.com/
- http://www.gamedev.net/community/forums/
- http://www.codeguru.com/forum/
- http://cboard.cprogramming.com/forumdisplay.php?f=3
- http://www.cpp-home.com/forum/index.php
- C++ Learning Community
Networking
- Beej's Guide to Network Programming
- http://dme.uma.pt/jcardoso/Teaching/SD/Sockets%20C.pdf
- http://www.mobiustech.ie/docs/TCP_IP_Programming.pdf
- http://www2.cs.uh.edu/~rzheng/course/COSC6397sp2008/Advanced_Socket_Programming.pdf
- http://courses.cs.vt.edu/~cs4254/spring06/slides/IO_Multiplexing_4.pdf
- http://irl.eecs.umich.edu/jamin/courses/eecs494/fall06/lectures/lecture9-socket.pdf
- http://ece.ut.ac.ir/Classpages/S84/Network/unix/Npc13.ppt
- http://www.cs.binghamton.edu/~mlewis/csX28/slides/csX28-UDPSockets.ppt
- Performance Management Guide-Tuning TCP and UDP Performance
- TCP/IP Illustrated, Volume 1
- Sockets Tutorial
Unix Sockets
- Network Programming under Unix Systems
- Unix Network Programming
- The Art of Unix Programming
- BSD Sockets: a quick and dirty primer
Windows Sockets
Protocol Design
Multiplayer Design & Programming
Basics
- GameDev.net Multiplayer FAQ
- Introduction to Multiplayer Game Programming
- Introduction: Designing Multiplayer Games
- UDP vs. TCP
- Networking for Games 101
- Beej's Guide to Network Programming
- Networking for game programmers
- Programming Multiplayer Games - ebook
Design & General
- QoS Issues for Multiplayer Gaming
- Networking and Multiplayer Games
- Unreal Networking Engine
- Quake3 Networking Model
- Network Game Programming (flipcode)
- Aspects of Networking in Multiplayer Games
- Design of communications, competition and collaboration in online games (pdf)
- Scalable massive multiplayer games (pdf)
- Multiplayer Tips and Tricks from GDC 2004
State Management & Prediction
- Network State Interpolation
- Dead Reckoning:Latency Hiding for Networked Games
- Defeating Lag With Cubic Splines
- Distributed Gaming
- Statistical Client Prediction
- Networked Physics
- Cheat-Proof Playout for Centralized and Distributed Online Games
Compression / Effiency
- Designing Fast-Action Games For The Internet
- Using Groupings for Networked Gaming
- Distributing Object State for Networked Games Using Object Views
- An Efficient Synchronization Mechanism for Mirrored Game Architectures (pdf)
Security
Libraries