This page is for my benefit. I use it to save links to sites that I want to remember. They are in categories so they might be useful to others.
Contents:
1. General posts and assets not specific to a development environment
2. XNA specific posts and examples
3. Android specific posts and examples
4. Unity 3D specific posts and examples
* 1. General *
Art, 2D Images, Textures and 3D Models
Download section includes original models and parts: http://www.scifi-meshes.com/
For Blender there are loads of models on http://www.blendswap.com/ most of which can be used free for commercial use, check the licences: http://www.blendswap.com/licenses/
Buy Game ready 3D models:
http://www.3drt.com/
http://www.3dmodels-textures.com/ (nee http://www.dexsoft-games.com/)
http://www.frogames.net/
http://www.gameprefabs.com/
http://www.unitymagic.com/shop/en/
http://www.garagegames.com/products/browse/artpacks
http://www.3-d-c.de/ also available from http://www.renderosity.com/mod/bcs/index.php?ViewProduct=86827
http://www.renderosity.com/ (most are for poser but often come with other formats)
List of sites: http://answers.unity3d.com/questions/16650/game-asset-website-list-free-and-paid-textures-mod.html
Tony Hayes SciFi Gallery: http://my-art-gallery.co.uk/
Lots of SciFi models: http://solcommand.blogspot.com/
Lots of stuff useful for detail: http://www.3dxtras.com/
Sponza Atrium, nice model used frequently for testing: http://hdri.cgtechniques.com/~sponza/
Some good samples of Google SketchUp models: http://sketchup.google.com/3dwarehouse/cldetails?mid=53a5961a82b0b46bb6b5161efde62bf9
If you want textures: http://www.cgtextures.com/, http://www.imageafter.com/textures.php, http://mayang.com/textures/
The customer free samples show off this Photoshop plugin: http://www.filterforge.com/filters/
For character modeling there are some textures here: http://www.photoshoptextures.com/human-textures/human-textures.htm
Digital graph paper handy for design and development: http://incompetech.com/graphpaper/
Online file convesion: http://www.zamzar.com/ (includes PDF to PNG or JPG)
Textures and Brush plugins for Photoshop and GIMP: http://www.texturemate.com/
Loads of textures: http://cgtextures.com/
Loads of textures, models, drawing and other stuff but be careful some are GPL licenced. Plenty are Creative Common or Public Domain: http://opengameart.org/
Site bringing together loads of assets types including models and sound: http://www.thegamecreators.com/
Icons and clipart, public domain: http://openclipart.org/
Windows Icon requirements: http://www.creativefreedom.co.uk/icon-designers-blog/windows-7-icon-sizes/ They also give away a few very nice free icons.
Simon Jackson has a long list of resources including tools as well as all sorts of assets for games: http://darkgenesis.zenithmoon.com/monster-set-of-free-resources-for-game-design/
Artists, Freelance
2D, 3D, Animations, Characters and Weapons:
http://moonseer.portfoliobox.net/
http://philipmehr.tumblr.com/
Art Inspiration
- Futuristic weapons:
http://WillowXD.deviantart.com/art/3D-Futuristic-Hand-Gun-198780543
http://biometal79.deviantart.com/art/Infantry-Rifle-of-the-future-115775945
http://Gasteiz.deviantart.com/art/Futuristic-Assault-Rifle-165700288
http://dudewazzup.deviantart.com/art/Futuristic-assault-rifle-167920894
http://BIG-J0N.deviantart.com/art/Futuristic-Rifle-181033922
- Future cities:
http://jjeffreychai.deviantart.com/art/futuristic-johor-79861888
http://cMac89.deviantart.com/art/Futuristic-City-294182392
http://jacob07777.deviantart.com/art/Rundown-Futuristic-Suburb-165666135
- Futuristic environments
http://weiweihua.deviantart.com/art/The-City-Moliya-In-Green-Valle-46549609
http://lordstormdragon.deviantart.com/art/Alien-Temple-WIP-34095925
http://karsten.deviantart.com/art/Alien-interface-template-14005
- Galleries
http://fantasyartdesign.com
Artificial Intelligence (A.I.) In Games
http://aigamedev.com/articles/ or http://AiGameDev.com/members/
http://www.gameai.com/
Getting started: http://www.gamedev.net/topic/592473-recommended-ai-books-and-sites/
Goal-Oriented Action Planning (GOAP): http://web.media.mit.edu/~jorkin/goap.html
Pathfinding, Navigation Meshes and Nodes: http://www.ai-blog.net/archives/000152.html
Brains by Sgt. Conker: http://www.sgtconker.com/affiliated-projects/brains/
The Bots used in Counter Strike: http://hpb-bot.bots-united.com/
Some insights in this presentation: http://www.emunix.emich.edu/~evett/GameProgramming/LectureNotes/FPS.pdf
C# Navigation Mesh created by Sick Kreation http://sickkreations.com/:
http://xboxforums.create.msdn.com/forums/p/109484/647991.aspx#647991
Based on: http://digestingduck.blogspot.co.uk/
Download: http://sickkreations.com/c-port-of-recastdetour-navigation-mesh/
3D Modelling Applications and Instructions
Blender Home: http://www.blender.org/ and downloads: http://download.blender.org/release/
Blender to XNA FBX Exporter which ships with Blender: http://wiki.blender.org/index.php/Extensions:2.5/Py/Scripts/Import-Export/Blender-toXNA
Blender More Documentation: http://foreverblender.blogspot.com/
Blender to Sunburn tutorial. Useful tips on UV unwrapping and materials and generally a good blog to follow: http://faux-motion.blogspot.com/ By: @DDReaper
Blend Swap: http://www.blendswap.com/
Lots of Blender tutorials: http://www.blenderguru.com/
3DS Max to XNA exporting: http://www.cgarena.com/freestuff/tutorials/max/xna/
.Blend files to XNA, I have not tried this yet... http://xnadotblend.codeplex.com/
Import FBX with Armature in to Blender 2.70: http://darisl.wordpress.com/about/importing-fbx-files-into-blender-with-full-armaturesweights/
UV Unwrap Head, typical cuts: http://bgdm.katorlegaz.com/lscm_tute/lscm_tute.htm
Fonts
Satisfy yourself that the licence for each font is suitable for use in a game.
Free commercial font licenses with Google WebFonts: http://www.google.com/webfonts
The http://www.dafont.com/ site has many for personal use but some are unrestricted.
Maths
XNA uses a right-handed coordinate system +Z faces the camera, +X to the right and +Y up: http://msdn.microsoft.com/en-us/library/gg197424.aspx
XNA uses a Row Vector layout (row-major): http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.matrix.aspx
Good starting point for understanding matrix maths: http://stevehazen.wordpress.com/2010/02/15/matrix-basics-how-to-step-away-from-storing-an-orientation-as-3-angles/
A general maths site: http://www.euclideanspace.com/maths/geometry/rotations/euler/index.htm
The main stuff needed for Vectors: http://www.wildbunny.co.uk/blog/vector-maths-a-primer-for-games-programmers/vector/
A starter 3D matrix article (column-major): http://www.gamedev.net/page/resources/_/technical/math-and-physics/3d-matrix-math-demystified-r695
The following helps a bit to understand rotating vectors and how Matrix rotations are constructed from 3 vectors, normally at right angles to each other: http://bobobobo.wordpress.com/2009/03/15/rotating-a-vector-to-match-up-with-another-vector/
The following gives one of the more understandable (still a bit detailed) descriptions of creating a rotation matrix: http://www.fastgraph.com/makegames/3drotation/
Quaternion code: http://willperone.net/Code/quaternion.php
Normal Mapping
Creating Normal Maps from 2D textures: http://www.katsbits.com/tutorials/textures/how-not-to-make-normal-maps-from-photos-or-images.php
Particles
Mercury Particle Engine (CPU): http://mpe.codeplex.com/
Nuclex framework including CPU particles: http://nuclexframework.codeplex.com/
Digital Runes CPU Particles (Paid): http://www.digitalrune.com/Products/GameEngine/Particles.aspx
Soft particles, summary of methods and links: http://www.gamerendering.com/2009/09/16/soft-particles/, based on: http://developer.download.nvidia.com/whitepapers/2007/SDK10/SoftParticles_hi.pdf, http://www.iit.bme.hu/~szirmay/firesmoke.pdf, http://www.gamasutra.com/view/feature/3680/a_more_accurate_volumetric_.php, http://msdn.microsoft.com/en-us/library/bb172449(VS.85).aspx
Physics and Collision
Beginner tutorial: http://sharky.bluecog.co.nz/?p=119
Loads of excellent stuff by @gafferongames: http://gafferongames.com/: http://gafferongames.com/game-physics/physics-in-3d/
Open Source:
- XNA Bepu Physics 3D: http://www.bepuphysics.com/ and download: http://bepuphysics.codeplex.com/ and documentation: http://bepu-games.com/BEPUphysics/downloads/Documentation/BEPUphysicsGettingStartedDocumentation.pdf
- XNA Bullet Physics port 3D: http://xboxforums.create.msdn.com/forums/p/78966/478283.aspx#478283 and source: http://code.google.com/p/bullet-xna/
Example with C++ code: http://www.peroxide.dk/download/tutorials/tut10/pxdtut10.html
- XNA Farseer Physics 2D: http://farseerphysics.codeplex.com/
Camera movement using Matrices: http://xboxforums.create.msdn.com/forums/p/97818/583322.aspx#583322 and http://stevehazen.wordpress.com/2010/02/15/matrix-basics-how-to-step-away-from-storing-an-orientation-as-3-angles/
2D line against a grid using Digital Differential Analyser (DDA): http://www.bloodfromastone.co.uk/boundarydda.html This is not perfect as it can miss cells.
Algorithms that give super cover (don't miss any grid squares) of the line: http://lifc.univ-fcomte.fr/~dedu/projects/bresenham/index.html
Object to object collision: http://realtimerendering.com/intersections.html
Ray to triangle C++: http://softsurfer.com/Archive/algorithm_0105/algorithm_0105.htm
Triangle to various including box: http://fileadmin.cs.lth.se/cs/Personal/Tomas_Akenine-Moller/code/
Sounds and Music
Software:
http://audacity.sourceforge.net/
Some sites that have 'royalty-free music and sounds' and or under the Creative Common licences:
http://www.freesound.org/
http://www.incompetech.com/m/c/royalty-free/
http://www.flashkit.com/
http://www.purple-planet.com/
http://www.pacdv.com/sounds/
http://freestockassets.com/
http://soundbible.com
http://www.thegamecreators.com/?m=view_product&id=2108
Composer for games, TV and other with nice samples: http://www.nicholassinger.com/ and offer here: http://xboxforums.create.msdn.com/forums/p/108563/640832.aspx#640832
Testing
Testing service for Indies: http://tofu-testing.com/
My Own Example Code:
Game site with code samples: http://games.discoverthat.co.uk/
3D Model Prep code: http://code.google.com/p/3d-model-prep/
Various tests and examples including how to add Winform menus to an XNA Game class and a bare bones Winform project with the XNA Graphics Device control, a floor and 3D Axes: http://code.google.com/p/xna-game-menu/
GPU Particles tool to help create effects based on the Microsoft 3D particle samples: https://gpuparticles.codeplex.com/
Bresenham line plot in C#: http://lineplothelpers.codeplex.com/
Code Storage, Version and Source Control
Somewhere to dump examples: http://pastebin.com/ and my PasteBin: http://pastebin.com/u/JCBDigger
Subversion for Windows Explorer: http://tortoisesvn.tigris.org/
Free or low cost commercial Subversion hosting:
- http://unfuddle.com/ (200M free, good speed, medium cost)
- http://www.sliksvn.com/ (100M free, fast in Europe, lower cost, no online payment!)
- http://codesion.com (No free, higher cost)
- http://www.codespaces.com (500M for 45 days, slower speed, lowest cost) Monitor site: http://www.siteuptime.com/prem_statistics.php?Id=4247&UserId=73518
Free open source Subversion hosting:
- http://code.google.com/p/support/wiki/GettingStarted
Other free repositories:
- https://bitbucket.org/ (Free unlimited up to 5 users. GIT and Mercurial only)
SourceTree Git client: http://sourcetreeapp.com/
- It took me a day to get my head round Git but it does work smoothly and my apps and explorer are tidier than with SVN. I'm now migrating every project over to Git.(March 2014)
- Of the 3 Git clients I tried I found SourceTree far neater and nicest to use.
Using BitBucket with Unity3D: http://adamsingle.com/unitygitsourcetreebitbucketmactute/
GitHub support subversion as well as GIT clients so this is handy for open source projects: https://help.github.com/articles/support-for-subversion-clients
Component Based Programming
This is an alternative to and complimentary to Object Oriented programming. Entities are made up of components such as health, movement and render etc. rather than a deep hierarchy of inheritance.
http://cowboyprogramming.com/2007/01/05/evolve-your-heirachy/
https://github.com/shrt/ComponentKit
I find the following a good article which explains why I tend to end up using Composition and Interfaces for games rather than just Object Oriented Programming: http://www.mistydaygames.com/?p=143
Games and Game Related
Indie AAA SciFi FPS for the PC: http://www.interstellarmarines.com/
This is the console I want: http://www.ouya.tv/ it was funded by http://www.kickstarter.com/projects/ouya/ouya-a-new-kind-of-video-game-console
Where development teams share ideas: http://www.gamesprout.com/
Video Production
Microsoft Expression Encoder (free trial remember to get at least SP1): http://www.microsoft.com/expression/products/encoderpro_overview.aspx
http://www.microsoft.com/download/en/details.aspx?id=24601
Instructions for screen capture: http://urbngeek.blogspot.com/2011/03/how-to-record-screen-casts-using.html
Use Movie Maker to enhance the results (free): http://explore.live.com/windows-live-movie-maker
Game Reviews and Marketing
Dedicated to XBLIG reviews: http://thexblig.com/
The Xbox Informer: http://paper.li/danord24/1308573684
General Review sites:
Indie Gamer Chick, brutal reviews: http://indiegamerchick.com/category/tales-from-the-dev-side/
http://indietrials.com/
http://www.thegamejar.com/
http://forums.create.msdn.com/forums/p/92716/555803.aspx#555803
Gamasutra, jobs, reviews and news: http://www.gamasutra.com/
Marketing:
What Indies should be doing: http://wootcomms.com/2011/10/3-reasons-create-press-kit-game/
MSDN FAQ including box art sizes: http://create.msdn.com/en-US/home/faq/xbox_live_indie_games
A fan video of this very page, how cool is that, thanks Charles: http://youtu.be/KppH2CJZWjI
* 2. XNA *
The main site: http://xbox.create.msdn.com/en-us
XNA Animations
Libraries and samples:
Kilowatt animation library: http://www.enchantedage.com/node/24
XNAnimation library: http://xnanimation.codeplex.com/ and a more up to date variant for Sunburn: http://sgmotion.codeplex.com/
Skinning Sample: http://create.msdn.com/en-US/education/catalog/sample/skinned_model
Skinning Sample extensions: http://create.msdn.com/en-US/education/catalog/tutorial/skinned_model_extensions
Xbox Live Avatar animation blending: http://create.msdn.com/en-US/education/catalog/sample/avatar_animation_blending
Fault with multiple animations when imported from FBX with Windows Phone SDK 7.1: http://xboxforums.create.msdn.com/forums/p/93794/561812.aspx
Shawn Hargreave on how to merge animations: http://blogs.msdn.com/b/shawnhar/archive/2010/06/18/merging-animation-files.aspx
A previous forum post to get people started: http://xboxforums.create.msdn.com/forums/p/106077/625468.aspx#625468
Rag doll physics: http://www.gamasutra.com/view/feature/131313/advanced_character_physics.php?print=1
XNA Content Pipeline
XNA 4 COLLADA importer and model class: http://bunkernetz.wordpress.com/2011/04/03/open-source-project-for-animated-collada-models-in-xna-4/
Creating textures in the pipeline: http://skytiger.wordpress.com/2010/12/04/xna-content-pipeline-gamma-correct-mip-map-texture-processor/
XNA Debug and Performance
A must for Xbox development. This is what you need to get the games on to the Xbox. It can be hard to find from the Xbox end so here is another way to get it: http://marketplace.xbox.com/en-US/Product/XNA-Game-Studio-Connect/00000000-0000-400c-80af-e002584e07d1
XNA debugging tools: http://www.thecomplot.com
Profiler: http://code.google.com/p/slimtune/
How to use PIX included in this forum post: http://xboxforums.create.msdn.com/forums/p/95191/569128.aspx#569128
A PIX Tutorial:
http://mynameismjp.wordpress.com/samples-tutorials-tools/pix-with-xna-tutorial/
How to use the CLR Profiler: http://spacedjase.com/post/2010/07/02/How-to-eliminate-frame-by-frame-Garbage-Generation-using-CLR-Profiler.aspx and
http://www.flatredball.com/frb/docs/index.php?title=FlatRedBallXna:Tutorials:CLR_Profiler
Garbage free strings: http://www.gavpugh.com/2010/04/05/xnac-a-garbage-free-stringbuilder-format-method/
Summary of methods to improve performance: http://www.sgtconker.com/2011/05/high-end-performance-optimizations-on-the-xbox-360-and-windows-phone-7/
Slightly improved instancing and a discussion on timings: http://xboxforums.create.msdn.com/forums/p/83535/503785.aspx#503785
CLR profiler version 4 download: http://www.microsoft.com/downloads/en/details.aspx?FamilyID=be2d842b-fdce-4600-8d32-a3cf74fda5e1
A discussion about it's use: http://xboxforums.create.msdn.com/forums/p/84317/508080.aspx#508080
Xbox 360 internal workings: http://www.cis.upenn.edu/~cis501/papers/xbox-system.pdf
More about avoiding garbage: http://www.simple-talk.com/dotnet/.net-framework/5-tips-and-techniques-for-avoiding-automatic-gc-collections/
Checklists that Xbox Live Indie XNA games must be verfied against: http://create.msdn.com/en-US/resources/help/peer_review_evil_checklist and clarification: http://create.msdn.com/en-US/resources/help/peer_review_not_so_evil_checklist
Tip to on how to count garbage collections using a week reference; http://forums.create.msdn.com/forums/p/105773/623681.aspx#623681
XNA Engines and Frameworks
Integrates with the Sunburn engine: http://indiefreaks.com/
Commercial but low cost render engine: http://www.synapsegaming.com/products/sunburn/engine/
Open Source XNA engines:
http://xnafinalengine.codeplex.com/
http://nine.codeplex.com/
http://code.google.com/p/illuminati-engine-xna/
Torque3D now with MIT licence open source: http://www.garagegames.com/community/blogs/view/21886
XNA Forums and Discussion
Microsoft App Hub: http://create.msdn.com/
Microsoft XNA App Hub: http://forums.create.msdn.com/forums/
XNA Intancing
Drawing lots of things based on just one draw.
Using a texture atlas: http://www.float4x4.net/index.php/2011/07/hardware-instancing-for-pc-in-xna-4-with-textures
XNA Multithreading and Thread Safety
The 'lock' method has been recommended to me as the best method to use: http://msdn.microsoft.com/en-us/library/c5kehkcz(v=VS.100).aspx
Value types are safe in that they don't error but they may not contain the expected value: http://msdn.microsoft.com/en-us/library/system.data.metadata.edm.primitivetype.aspx
Simple value types like 'bool' cannot be relied on to lock a class because their contents cannot be guaranteed, use the 'lock' method as linked above.
You can use any reference type object to lock that section of code as long as it is the same object used throughout. It is sometimes useful to create an object just to use as the lock but any existing member will do: http://xboxforums.create.msdn.com/forums/t/98109.aspx
The following article is a good description of how to do it: http://www.albahari.com/threading/part2.aspx
The volatile keyword is unlikely to be useful if you use lock instead: http://bytes.com/topic/c-sharp/answers/256953-threadsafe-value-types and http://www.yoda.arachsys.com/csharp/threads/volatility.shtml
The 'interlocking' class can be used for simple tasks on static ints and longs but only some methods are available to the Xbox: http://msdn.microsoft.com/en-us/library/system.threading.interlocked.aspx
Each thread must use its own instance of Random: http://msdn.microsoft.com/en-us/library/system.random(v=VS.100).aspx
Putting update and draw in different threads: http://xboxforums.create.msdn.com/forums/p/83031/501084.aspx
XNA Networking
XNA Methods: http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.net.aspx
Microsoft networking sample with explanations and lobby screens etc.: http://create.msdn.com/en-US/education/catalog/sample/network_game_state_management
Networking presentations, including proof the Internet sucks and only use UDP: http://gafferongames.com/
This is how Halo does it.
http://www.gdcvault.com/play/1014345/I-Shot-You-First-Networking
8k bytes per second and 200ms latency. Don't argue that's all you've got, the Internet sucks! http://blogs.msdn.com/b/shawnhar/archive/2007/12/18/network-bandwidth-packet-headers.aspx
A presentation to give options for what you do about it: http://www.shawnhargreaves.com/MakingNetworkedGames.pdf
Using XNA to simulate that the Internet sucks! http://msdn.microsoft.com/en-us/library/bb975762.aspx
Explanation of the basic terms used for the XNA networking: http://geekswithblogs.net/JoshReuben/archive/2011/06/28/xna-multiplayer-games-and-networking.aspx
Player to player Scoreboard for XNA 4: http://spyn-doctor.blogspot.com/2010/12/global-scoreboard-component-for-xna-40.html
Multiplayer example including getting the player state for displaying relevant information: http://msdn.microsoft.com/en-us/library/bb975645(v=xnagamestudio.31).aspx
Network latency compensation and prediction:
https://developer.valvesoftware.com/wiki/Latency_Compensating_Methods_in_Client/Server_In-game_Protocol_Design_and_Optimization
http://gafferongames.com/game-physics/networked-physics/ (Read all the comments they are as useful as the article.)
Windows networking library: http://code.google.com/p/lidgren-network-gen3/
XNA Screen Resolution and Split Screen
Microsoft viewport example: http://msdn.microsoft.com/en-us/library/bb313965(v=xnagamestudio.40).aspx
The Xbox cannot scale down from 1080p to 480i: http://create.msdn.com/en-US/resources/help/peer_review_evil_checklist and http://social.technet.microsoft.com/wiki/contents/articles/xna-framework-overview.aspx
XNA Shader Effects (HLSL), Rendering and Graphics
- HLSL Functions:
http://msdn.microsoft.com/en-us/library/ff471376.aspx
Methods: http://msdn.microsoft.com/en-us/library/windows/desktop/bb509656(v=VS.85).aspx
Operators: http://msdn.microsoft.com/en-us/library/windows/desktop/bb509631(v=vs.85).aspx
- Soft Particles:
http://xboxforums.create.msdn.com/forums/t/31387.aspx
- XNA Pipeline:
Derived Effects:http://www.sgtconker.com/2010/08/article-derived-effect-classes-in-xna-4/
Graphics device in the pipeline: http://xboxforums.create.msdn.com/forums/p/79538/481662.aspx#481662
- Ambient Occlusion (AO):
Notes: http://meshula.net/wordpress/?p=145
XNA SSAO Sample (GS4.0) and Deferred Render Tutorial: http://thecansin.com/2011/01/deferred-rendering-in-xna-4-and-ssao-with-normals/
XNA SSAO Sample (GS3.1): http://www.codeplex.com/wikipage?ProjectName=XNACommunity&title=SSAO&referringTitle=Home
Unsharpe depth buffer SSAO: http://graphics.uni-konstanz.de/publikationen/2006/unsharp_masking/webseite/
Blender version: http://mke3.net/weblog/unsharp-mask-ao/
XNA SSAO Sample with smart blur: http://www.garrywilliams.fr/ssao
- Terrain texturing:
http://www.dhpoware.com/demos/xnaTerrainTexturing.html
http://www.catalinzima.com/tutorials/4-uses-of-vtf/terrain-rendering-using-heightmaps/
Water in XNA 3.1: http://graphicsrunner.blogspot.com/2008/11/water-game-component.html
Ocean in XNA: http://channel9.msdn.com/coding4fun/articles/Making-an-Ocean-with-XNA
Riemers Water, read the tutorials from this link down to the specular highlights page: http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series4/The_water_technique.php
Primer for shader techniques: http://www.animationtrip.com/item.php?id=931
Overview of the graphics pipeline: http://fgiesen.wordpress.com/2011/07/09/a-trip-through-the-graphics-pipeline-2011-index/
- Deferred Rendering
Excellent tutorial by "Celal Cansin Kayi" using XNA: http://homepage.lnu.se/staff/tblma/Deferred%20Rendering%20in%20XNA%204.pdf
http://www.catalinzima.com/tutorials/deferred-rendering-in-xna/
http://roy-t.nl/index.php/2010/12/28/deferred-rendering-in-xna4-0-source-code/
http://www.neuroproductions.be/opengl/making-a-3d-game-with-opengl-deferred-shading-and-stuff/
OpenGL: http://www.codinglabs.net/tutorial_simple_def_rendering.aspx
Water: http://www.madgamedev.com/post/2009/11/03/Article-Realistic-Soft-Edged-Water-In-XNA.aspx
An excellent and long list of shader tutorials with source code: http://digitalerr0r.wordpress.com/tutorials/
XNA ShadowMaps
MSDN Article on shadows: http://msdn.microsoft.com/en-us/library/ee416324(VS.85).aspx
ID Based Shadow Mapping: http://xboxforums.create.msdn.com/forums/p/62145/382262.aspx
Tom Forsyth: http://home.comcast.net/~tom_forsyth/ and shadowmap overview: http://home.comcast.net/~tom_forsyth/papers/Tom_Forsyth_Practical_Shadows.ppt.zip
Full lighting with sample shaders with shadows: http://jcoluna.wordpress.com/
Samples and blogs:
http://channel9.msdn.com/coding4fun/blog/Adding-awesome-lighting-effects-to-your-XNA-game
http://forum.beyond3d.com/showthread.php?t=40805
http://thecansin.com/2011/01/deferred-rendering-in-xna-4-and-ssao-with-normals/
http://www.olhovsky.com/2011/07/shadow-map-filtering-experimentation/
Solving the moving, waving or shimmering edges:
http://xboxforums.create.msdn.com/forums/p/88298/529561.aspx#529561
http://mynameismjp.wordpress.com/samples-tutorials-tools/deferred-shadow-maps-sample/
https://skydrive.live.com/?cid=538e432ea49f5bde&id=538E432EA49F5BDE%21133
http://www.gamedev.net/topic/591684-xna-40---shimmering-shadow-maps/
http://www.gamedev.net/topic/497259-stable-cascaded-shadow-maps/
Understanding texels and pixels: http://drilian.com/2008/11/25/understanding-half-pixel-and-half-texel-offsets/
Moving the light is problematic: http://mtnphil.wordpress.com/2011/10/31/shadow-maps-for-moving-light-sources/
XNA Sound Effects
Summary of XACT and SoundEffect: http://gamedevelopedia.com/post/2011/08/14/XNA-40-Workshop-Week-5.aspx
3D sound with XACT: http://mtnphil.wordpress.com/2012/04/27/modeling-area-sound-emitters/
Avoiding XACT garbage problems by using SoundEffect: http://xboxforums.create.msdn.com/forums/p/76909/467082.aspx#467082
MSDN: http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.audio(v=xnagamestudio.40).aspx
XNA Spritebatch
Billboard for 3D text: http://blogs.msdn.com/b/shawnhar/archive/2011/01/12/spritebatch-billboards-in-a-3d-world.aspx
XNA Storage
Saving and loading in game.
Easy Storage by Nick Gravelyn: http://easystorage.codeplex.com/
Tutorial for Easy Storage: http://robotfootgames.com/xna-tutorials/92-xna-tutorial-savingloading-on-xbox-360-40
XNA Terrain
Heightmap terrain with LoD: http://www.dustinhorne.com/page/XNA-Terrain-Tutorial-Table-of-Contents.aspx
Amazing example of terrain creation: http://www.youtube.com/watch?v=RtQvClStzt0 see also the terrain stuff on: http://mtnphil.wordpress.com/
XNA Collections of Sample Code
Shawn Hargreaves blog index: http://www.talula.demon.co.uk/blogindex.html
XNA Wiki: http://xnawiki.com/
XNA UK User Group: http://xna-uk.net/ and code samples: http://xna-uk.net/media/
XNA Creators Club Education Samples: http://create.msdn.com/en-US/education/catalog/
DHPOware, many useful samples: http://www.dhpoware.com/demos/index.html
Some 3D model helpers: http://metlab.cse.msu.edu/xna.html including a different animation sample that overcomes some of 3DS's limitations: http://metlab.cse.msu.edu/betterskinned.html
3D Level Editor with some nice looking features: https://sceneeditor.codeplex.com/
XNA Games In Development
Several of the few XNA FPS games are created by the same team: http://sickkreations.com/ 'End-Of-Days' is well worth the time to look at: http://sickkreations.com/end-of-days/
Nice work on Astralis: https://www.facebook.com/Astralis1 and http://www.youtube.com/watch?v=5rvFIN-NYM8
Clone of Duty FPS by another UK guy: http://cloneofduty.com/
Aiming for AAA graphics in an Indie game: http://www.nelxon.com/
Great work going in to this zombie game: http://deadshift.com/ @PolyVector suspended work on this: http://vvgtv.com/2011/05/04/dead-shift-what-happened-xblig/
SciFi FPS with its own editor: http://afallenapple.wordpress.com/
The shadow effects created by @SigilXNA in this 3D RPG are excellent: http://ophidianwars.blogspot.com/
Another very nice looking FPS in XNA: http://tomlooman.com/current-projects/game-project-sunburn/
Phil Fortier has a similar development blog at Ice Fall Games: http://mtnphil.wordpress.com/ and site here: http://www.icefallgames.com/
XNA Fan tutorials and blog: http://xnafan.net/
Astralis: https://www.facebook.com/Astralis1 and http://xboxforums.create.msdn.com/forums/t/104871.aspx see also @_Eclectus and http://thexblig.com/2013/03/30/ladies-and-gentlemen-astralis/
HollowFear, top down isometric: http://hollowfear.com/development/the-engine/
XNA C# Managed Code, .NET Alternatives and C++
XNA support after Microsoft stopped: http://msxna.codeplex.com/
MonoGame: http://www.monogame.net/ and http://monogame.codeplex.com/ This is a well supported and arguably the most popular route to take to make XNA multiplatform. You can write in C# with high XNA compatibility. To run on some other platforms there are some unavoidable costs but is mainly open source. http://www.wpcentral.com/xna-dead-long-live-xna
Posting advice: http://benkane.wordpress.com/tag/the-great-porting-adventure/
A tool to help port 2D XNA API to other platforms: http://andrewrussell.net/exen/ and http://exen.codeplex.com/ open source.
SDL 2 being added to MonoGame: http://wiki.libsdl.org/moin.fcg/FrontPage
ANX an XNA source code compatible clone for other platforms: http://anxframework.codeplex.com/ and http://xboxforums.create.msdn.com/forums/p/94450/565347.aspx#565347
SharpeDX: http://code.google.com/p/sharpdx/
SlimDX: http://slimdx.org/
YNA: http://yna.codeplex.com/ and https://www.ohloh.net/p/yna
Sunburn Engine, C# XNA content using Sunburn rendering on serveral platforms:
http://www.codeproject.com/Articles/522228/XNAplustoplustheplusSunburnplusGamingplusEngineplu
http://www.synapsegaming.com/blogs/johnk/archive/2012/10/23/announcing-sunburn-2-1-platform-independent-game-engine.aspx
XNA 4.0 refresh: http://www.microsoft.com/download/en/details.aspx?id=27599
Windows Phone 7.1 SDK: http://www.microsoft.com/download/en/details.aspx?id=27570
Unity 3D to XNA porting tools: https://github.com/fehaar/FFWD
Microsoft DirectXTK C++ versions of some of the XNA features:
http://directxtk.codeplex.com/
http://blogs.msdn.com/b/chuckw/archive/2012/03/02/directxtk.aspx see also: http://blogs.msdn.com/b/shawnhar/
3D Model Mesh format for DirectXTK: http://blogs.msdn.com/b/shawnhar/archive/2013/01/25/directxtk-now-supports-loading-and-drawing-3d-models.aspx?utm_source=twitterfeed&utm_medium=twitter
Good starting point: http://www.gamedev-uk.net/
Charles Humphrey's blog on the subject: http://randomchaosdx11adventures.blogspot.co.uk/
Getting started with Direct3D 11: http://blogs.msdn.com/b/chuckw/archive/2011/07/11/getting-started-with-direct3d-11.aspx
Collada tutorial including animation information: http://www.wazim.com/Collada_Tutorial_1.htm
Collada main site: https://collada.org
Collada in to DirectX: http://thecansin.com/2010/10/collada-loading-for-directx/ and documentation: http://thecansin.com/Files/COLLADA.pdf and source code: http://thecansin.com/Files/CansinCOLLADA.rar
Book (free): C++ for C# developers: https://www.syncfusion.com/resources/techportal/ebooks/cplusplus
A base for Windows 8 games: http://geekswithblogs.net/mikebmcl/archive/2013/01/31/windows-store-directx-c-sample-base.aspx
Another post with more alternatives: http://amapplease.blogspot.co.uk/2013/02/the-fate-of-xna-now-what.html
XNA using WinForm
Timings for animations: http://blogs.msdn.com/b/shawnhar/archive/2010/12/06/when-winforms-met-game-loop.aspx
Sample apps: http://create.msdn.com/en-US/education/catalog/sample/winforms_series_2 and http://create.msdn.com/en-US/education/catalog/sample/winforms_series_1
XNA Peer Review, Best Practice and Distribution
Best Practice guide by Jim Perry: http://machxgames.com/blog/?p=119
XNA FAQ: http://xbox.create.msdn.com/en-US/home/faq/xbox_live_indie_games
Packaging the finished game files: http://msdn.microsoft.com/en-us/library/bb417502.aspx
XNA Blog Posting Helpers
Format Source Code: http://codeformatter.blogspot.com/2009/06/about-code-formatter.html
Here for XNA specific: http://codetobrowser.appspot.com/
I use this one to generate the HTML with colours but I do not include the background. I remove the table tags add my own background <pre> and <code> wrapper round it to make it compatible with Blogger.
A few languages here using a style sheet: http://www.manoli.net/csharpformat/
XNA, Xbox, Microsoft and Admin
Subscribe and unsubscribe from Microsoft services: https://billing.microsoft.com/
Xbox XNA Forums: http://xboxforums.create.msdn.com/forums/
XNA Microsoft AppHub Home
XNA Microsoft AppHub Forums
* 3. Android *
The main site: http://developer.android.com/index.html
Android Java
Beginner forums: http://stackoverflow.com/questions/tagged/android
Support forums: https://groups.google.com/forum/?fromgroups#!forum/android-developers
3D Java engine: http://www.jpct.net/jpct-ae/ based on http://www.jpct.net/
3D Java engine, open source: http://www.ardor3d.com/ can load Collada.
Animation: http://aptalkarga.com/bones/ includes the Collada loader from Ardor3D.
Getting started guide with further links: http://android-developers.blogspot.co.uk/2010/06/game-development-for-android-quick.html
Android OpenGL
Basic 3D OpenGL Tutorial: http://www.edumobile.org/android/android-development/how-to-draw-3d-graphics/
HLSL to GLSL (OpenGL): http://aras-p.info/blog/2010/05/21/compiling-hlsl-into-glsl-in-2010/ and the source code: https://github.com/aras-p/hlsl2glslfork
* 4. Unity *
The main site: http://unity3d.com/
Unity Animation and Character Modelling
Creating characters: http://docs.unity3d.com/Documentation/Manual/Preparingacharacterfromscratch.html
Importing animations: http://docs.unity3d.com/Documentation/Manual/AnimationsImport.html
Mecanim introduction: http://docs.unity3d.com/Documentation/Manual/MecanimAnimationSystem.html
Retargeting and creating an Avatar for Mecanim: http://docs.unity3d.com/Documentation/Manual/AvatarCreationandSetup.html
Mecanim blending and scripting tutorials and documentation:
https://www.youtube.com/watch?v=HjkFfkHCgCc
https://www.youtube.com/watch?v=Xx21y9eJq1U download tutorial files.
http://docs.unity3d.com/Documentation/Manual/AnimationBlendTrees.html
Animation transitions: https://docs.unity3d.com/Manual/class-Transition.html
Unity Assets
Ultimate FPS. This gets highly recommended and now supports PhotonCloud and 3rd person:
http://forum.unity3d.com/threads/ufps-ultimate-fps-50-off-sale.126886/
https://www.assetstore.unity3d.com/en/#!/content/2943
A recommended level editor for Unity:
http://www.protoolsforunity3d.com/probuilder/
https://www.assetstore.unity3d.com/en/#!/content/3558
Unity Editor
Extending the editor, general reference: http://docs.unity3d.com/Documentation/Components/ExtendingTheEditor.html
Displaying GUI controls in the editor: http://docs.unity3d.com/Documentation/ScriptReference/ExecuteInEditMode.html
Adding mouse over tooltips in the Inspector: http://answers.unity3d.com/questions/37177/additional-information-on-mouseover-in-the-inspect.html
Customise the attributes [Range(1, 2)] etc. in the editor: http://blogs.unity3d.com/2012/09/07/property-drawers-in-unity-4/
Unity Forums
http://forum.unity3d.com/forum.php - main site
http://armedunity.com/ - includes samples and tutorials
Unity General Tutorials and Tips
How to start for Ouya: http://www.chucksmith.de/2013/07/ideal-ouya-unity-dev-environment/
Collection of tutorials: http://devsbuild.it/resources/type/training/unity-gameplay-scripting-primer
Tips: http://devmag.org.za/2012/07/12/50-tips-for-working-with-unity-best-practices/
Gotchas: http://unitygems.com/mistakes1/
Fade in and out a scene: http://answers.unity3d.com/questions/119918/transitions-between-changing-scenes.html (I would replace the GL methods with a GUI texture and put it in the OnGUI() method of a MonoBehaviour class.)
Best practice guide (this is still someone else's view but I like most of the suggestions): http://www.glenstevens.ca/unity3d-best-practices/
A long list of more unity related sites: http://blogs.msdn.com/b/uk_faculty_connection/archive/2014/05/12/getting-started-with-unity3d-here-is-you-1-stop-of-shop-of-great-resources.aspx
Rigid body and controller summary: http://answers.unity3d.com/questions/7671/guidelines-for-using-rigidbody-collider-characterc.html
Character Controller is recommended for FPS but if you want to interact with physics behaviour rigidbody may be more appropriate:
http://wiki.unity3d.com/index.php?title=RigidbodyFPSWalker
http://gamedev.stackexchange.com/questions/18567/how-to-use-rigid-bodies-for-characters
Unity GamePad and other Input Devices
The manual says: http://docs.unity3d.com/Documentation/Manual/Input.html
This free project supports Ouya and others at the level I need: https://github.com/pbhogan/InControl (works well, I am using this as the base for my version)
GamePad support on the forums:
This starts with button 0: http://wiki.unity3d.com/index.php?title=Xbox360Controller
This has a different map: http://forum.unity3d.com/threads/115608-Xbox-Button-Map
Blog with some problems and solutions using the Xbox controller: http://zbegra.tumblr.com/post/46251462120/getting-the-most-out-of-your-xbox360-controller-in
XInput project for Xbox 360 GamePads: http://speps.fr/xinputdotnet and https://github.com/speps/XInputDotNet (Failed to work for me!)
How to programme the InputManager from a script: http://muuski.weebly.com/input-manager-tutorial-and-examples.html
Touch input in Windows, as at Jan 2014 (v4.3), is not natively supported so needs something like the following:
http://software.intel.com/en-us/blogs/2012/11/07/adding-multi-touch-support-in-unity-windows-apps
http://interactivelab.github.io/TouchScript/
Unity supports the Xbox One in version 4.3 and eventually 5.0 (but not 4.5 or 4.6) of Unity: http://blogs.unity3d.com/2014/08/11/unity-for-xbox-one-is-here/
Unity Networking
Unity Documentation: http://docs.unity3d.com/Documentation/Components/NetworkReferenceGuide.html
http://docs.unity3d.com/Documentation/Components/net-MinimizingBandwidth.html
https://docs.unity3d.com/Documentation/ScriptReference/NetworkView.RPC.html
Online providers:
http://appwarp.shephertz.com/
https://www.exitgames.com/en/OnPremise
http://www.scalify.com/index.php
Multiplayer tutorials:
Networking in Unity - http://3dgep.com/?p=4609
Online multiplayer including prediction: http://www.paladinstudios.com/2013/07/10/how-to-create-an-online-multiplayer-game-with-unity/
Multiplayer video tutorials (detailed but slow going): http://www.youtube.com/playlist?feature=edit_ok&list=PLnFrutcRi6Ig2XaP3pXKwZhprtm8xpdvz
Multiplayer FPS from scratch video tutorials (easy to follow): http://www.gamertogamedeveloper.com/
Quick and simple networking, no fuss, use this as a starter: http://armedunity.com/topic/1751-dag-server-drop-and-go-multiplayer/
Server side networking links: http://gamedev.stackexchange.com/questions/5693/can-i-do-server-side-programming-with-unity
Using a local connection or a local copy of the master server: http://forum.unity3d.com/threads/93465-Local-Network
Unity Programming Techniques
C# Programming with Unity: http://docs.unity3d.com/412/Documentation/ScriptReference/index.Writing_Scripts_in_Csharp_26_Boo.html
How to create a pseudo-singleton in Unity: http://answers.unity3d.com/questions/17916/singletons-with-coroutines.html
How to letterbox to keep a fixed aspect ratio: http://wiki.unity3d.com/index.php?title=AspectRatioEnforcer
How to make a GUITexture always fit the full screen: http://answers.unity3d.com/questions/292620/scale-gui-texture-to-current-screen-size.html
Coroutines, useful for timed events: http://unitygems.com/coroutines/
See also Invoke to launch methods after a time: http://docs.unity3d.com/Documentation/ScriptReference/MonoBehaviour.Invoke.html
Gizmos, icons visible in the editor: http://create3dgames.wordpress.com/2012/11/29/making-custom-gizmos/
Unity Samples
My own code including ToolTips and other useful stuff: https://github.com/ThatJCB/Unity3DUtilityKit
All the Unity team projects: http://unity3d.com/gallery/demos/demo-projects
FPS Kit by OneManArmy (free) Includes vehicles: http://armedunity.com/files/file/13-fps-kit-2-unity-401/
Some well respected tutorials and samples. Some are paid for: http://www.m2h.nl/unity/
A compilation of useful scrips by @nickgravelyn: https://github.com/nickgravelyn/UnityToolbag
A list of open source code: http://darkgenesis.zenithmoon.com/unity3d-and-opensource-get-acquainted/
Unity Save and Load User Files
User preferences have a simple built in method: http://docs.unity3d.com/Documentation/ScriptReference/PlayerPrefs.html
This may be out of date but apparently the built in UserPrefs is a bit slow on mobile devices so here is a faster version: http://www.previewlabs.com/writing-playerprefs-fast/ It also uses a file location which may be more appropriate than the registry on Windows.
Unity Split Screen
Basics and links to tutorials: http://answers.unity3d.com/questions/8202/how-to-make-a-split-screen-2-cameras-rendering-at.html
List of topics: http://answers.unity3d.com/questions/topics/split-screen.html
Paid asset, Splitscreen Manager: https://www.assetstore.unity3d.com/#/content/3919
Scale the GUI To match the split screen size: http://answers.unity3d.com/questions/150736/script-gui-units.html
Unity Terrain
Ramp Brush: https://www.assetstore.unity3d.com/en/#!/content/2393 and video tutorial https://www.youtube.com/watch?v=k46nP_u092E
Terrain Toolkit (old): https://code.google.com/p/unityterraintoolkit/ and video tutorial https://www.youtube.com/watch?v=YnO9RtarzHE