1
0
forked from 0ad/0ad
0ad/source/graphics
Ykkrosh 555deea136 Fix conditional defines to not construct new CShaderDefines frequently
CShaderDefines is designed to be efficient to copy and compare, but not
to construct. Conditional defines were constructing new CShaderDefines
for many models every frame.

Precompute all the possible conditional combinations of CShaderDefines
when a material is first loaded, so they can be looked up at no cost
when rendering.

This was SVN commit r13902.
2013-09-29 00:30:58 +00:00
..
scripting Changes GameView to expose global functions to scripts instead of using CJSObject. 2013-09-12 12:40:05 +00:00
tests Fixes some unconventional assignment operators, patch by Markus, refs #1852. 2013-05-22 22:04:58 +00:00
Camera.cpp Add support for specular materials. 2012-04-08 15:55:06 +00:00
Camera.h Fix build warnings. Patch by Markus. Refs #1851. 2013-06-11 00:05:57 +00:00
CinemaTrack.cpp Added elapsed real time (as opposed to elapsed simulation time) to MT_Interpolate messages. Fixes leftover TODO from #824. Refs #824. 2012-06-06 19:37:03 +00:00
CinemaTrack.h Added elapsed real time (as opposed to elapsed simulation time) to MT_Interpolate messages. Fixes leftover TODO from #824. Refs #824. 2012-06-06 19:37:03 +00:00
ColladaManager.cpp add file notification to Mac ticket 514, also change name of class FileInfo to CFileInfo to ease Mac development 2013-09-10 14:17:04 +00:00
ColladaManager.h Split skeleton definitions into multiple files, adds hotloading support for skeleton files. Fixes #190. 2013-07-08 20:25:06 +00:00
Color.cpp sync with work: 2011-12-27 14:12:31 +00:00
Color.h Simplify the overly-complex CppDoc-breaking file headers 2009-04-18 17:51:05 +00:00
Decal.cpp Removes shadow casting and receiving on preview entities, patch started by ericb, fixes #1771 2013-08-18 22:17:57 +00:00
Decal.h Removes shadow casting and receiving on preview entities, patch started by ericb, fixes #1771 2013-08-18 22:17:57 +00:00
Entity.h Attempts to fix random map OOS errors by avoiding parsing data to floats (uses CFixedVector3D instead). See #977. 2011-09-26 21:36:33 +00:00
Frustum.cpp Better selection boxes. Closes #914, #295, #810. 2011-11-25 06:36:13 +00:00
Frustum.h Better selection boxes. Closes #914, #295, #810. 2011-11-25 06:36:13 +00:00
GameView.cpp Changes GameView to expose global functions to scripts instead of using CJSObject. 2013-09-12 12:40:05 +00:00
GameView.h Changes GameView to expose global functions to scripts instead of using CJSObject. 2013-09-12 12:40:05 +00:00
HeightMipmap.cpp Compute camera height and zoom limits based on smoothed terrain heightmap. Fixes #794, based on patch by Dietger. 2012-04-18 20:39:00 +00:00
HeightMipmap.h Compute camera height and zoom limits based on smoothed terrain heightmap. Fixes #794, based on patch by Dietger. 2012-04-18 20:39:00 +00:00
HFTracer.cpp Rename CELL_SIZE to TERRAIN_TILE_SIZE, to free up the term "cell" for other concepts. 2012-01-12 12:51:10 +00:00
HFTracer.h Add some missing consts to arguments. 2010-07-25 14:10:46 +00:00
LightEnv.cpp Fixes MSVC warnings of truncation from double to float 2012-10-30 02:03:40 +00:00
LightEnv.h Postproc manager 2012-10-15 10:34:23 +00:00
LOSTexture.cpp Making sure LOS really is black after Reveal Map option is used... 2012-08-31 18:33:03 +00:00
LOSTexture.h smooth LOS 2012-08-06 22:38:42 +00:00
MapGenerator.cpp Adds the server-side part of the javascript debugger. Refs #410 2013-03-07 13:49:49 +00:00
MapGenerator.h Makes some classes NONCOPYABLE, based on patch by Markus, refs #1852 2013-05-22 21:40:56 +00:00
MapIO.h Implements random map system, fixes #6. 2011-03-22 01:34:45 +00:00
MapReader.cpp Removes more unused variables, based on patch by Markus, refs #1852. 2013-08-15 18:25:32 +00:00
MapReader.h Postproc manager 2012-10-15 10:34:23 +00:00
MapWriter.cpp Display error messages instead of breaking into the debugger when we don't have rights to save a map in Atlas. Fixes #1941. 2013-09-09 23:31:22 +00:00
MapWriter.h Postproc manager 2012-10-15 10:34:23 +00:00
Material.cpp Fix conditional defines to not construct new CShaderDefines frequently 2013-09-29 00:30:58 +00:00
Material.h Fix conditional defines to not construct new CShaderDefines frequently 2013-09-29 00:30:58 +00:00
MaterialManager.cpp Fix conditional defines to not construct new CShaderDefines frequently 2013-09-29 00:30:58 +00:00
MaterialManager.h ao/parallax/normal/specular/emissive mapping; windy trees; time manager; render queries; conditional defines 2012-08-06 19:10:47 +00:00
MeshManager.cpp Adds more specific error messages to failed model or animation loading. 2012-02-21 05:00:21 +00:00
MeshManager.h refactor path interface: 2011-03-23 13:36:20 +00:00
MiniPatch.cpp # Handle terrain passability and movement costs in pathfinder. 2010-05-27 23:31:03 +00:00
MiniPatch.h # Add new texture loading system with automatic compression. 2010-09-10 21:02:10 +00:00
Model.cpp Removes shadow casting and receiving on preview entities, patch started by ericb, fixes #1771 2013-08-18 22:17:57 +00:00
Model.h Removes shadow casting and receiving on preview entities, patch started by ericb, fixes #1771 2013-08-18 22:17:57 +00:00
ModelAbstract.cpp More build fixes for FreeBSD. 2012-01-31 00:06:56 +00:00
ModelAbstract.h Pretty unit selection overlay rings. Fixes #824. 2012-04-22 04:04:02 +00:00
ModelDef.cpp Add support for multiple UVs and data driven texture loading. From myconid's patches. Fixes #1493 and fixes #1497. 2012-07-23 22:49:46 +00:00
ModelDef.h Add support for multiple UVs and data driven texture loading. From myconid's patches. Fixes #1493 and fixes #1497. 2012-07-23 22:49:46 +00:00
ObjectBase.cpp Allow terrain aligned props. Patch by sanderd17. Fixes #2033. 2013-07-11 22:53:31 +00:00
ObjectBase.h Fixes prop bugs due to uninitialized variables on MSVC build, refs #2033 2013-07-12 03:32:14 +00:00
ObjectEntry.cpp Allow terrain aligned props. Patch by sanderd17. Fixes #2033. 2013-07-11 22:53:31 +00:00
ObjectEntry.h Fixes assignment operator warning on MSVC by making CObjectEntry NONCOPYABLE, refs #2033 2013-07-12 03:46:40 +00:00
ObjectManager.cpp Allow terrain aligned props. Patch by sanderd17. Fixes #2033. 2013-07-11 22:53:31 +00:00
ObjectManager.h cleanup (requires update-workspaces) 2011-05-03 12:38:42 +00:00
Overlay.cpp Removed reverse dependency on SOverlayTexturedLine from CTexturedLineRData; fixes dangling pointer dereference. Fixes #1495. 2012-06-17 03:40:35 +00:00
Overlay.h Removed reverse dependency on SOverlayTexturedLine from CTexturedLineRData; fixes dangling pointer dereference. Fixes #1495. 2012-06-17 03:40:35 +00:00
ParticleEmitter.cpp Fix particle to correctly display in the FOW, and to adapt slightly to sunColor settings (both on ARB and GLSL). 2013-03-15 10:22:24 +00:00
ParticleEmitter.h Bind textures correctly to GLSL sampler uniforms. 2012-04-10 21:07:52 +00:00
ParticleEmitterType.cpp Better selection boxes. Closes #914, #295, #810. 2011-11-25 06:36:13 +00:00
ParticleEmitterType.h Better selection boxes. Closes #914, #295, #810. 2011-11-25 06:36:13 +00:00
ParticleManager.cpp Added elapsed real time (as opposed to elapsed simulation time) to MT_Interpolate messages. Fixes leftover TODO from #824. Refs #824. 2012-06-06 19:37:03 +00:00
ParticleManager.h Added elapsed real time (as opposed to elapsed simulation time) to MT_Interpolate messages. Fixes leftover TODO from #824. Refs #824. 2012-06-06 19:37:03 +00:00
Patch.cpp Better selection boxes. Closes #914, #295, #810. 2011-11-25 06:36:13 +00:00
Patch.h # Add solid black sides to the map, to hide underwater terrain. 2011-02-03 14:36:54 +00:00
RenderableObject.h Pretty unit selection overlay rings. Fixes #824. 2012-04-22 04:04:02 +00:00
SColor.h Add GPL header 2009-04-18 17:00:33 +00:00
ShaderDefines.cpp Water and waterfall shaders, materials and examples. 2012-09-08 18:56:13 +00:00
ShaderDefines.h Water and waterfall shaders, materials and examples. 2012-09-08 18:56:13 +00:00
ShaderManager.cpp Changing sky manager to render sky using cubemaps, to avoid duplication of sky textures in memory. 2012-10-03 12:40:01 +00:00
ShaderManager.h Terrain/decal materials (includes triplanar/normal/specular/emissive mapping); custom alphamaps 2012-08-07 18:21:16 +00:00
ShaderProgram.cpp Changing sky manager to render sky using cubemaps, to avoid duplication of sky textures in memory. 2012-10-03 12:40:01 +00:00
ShaderProgram.h Changing sky manager to render sky using cubemaps, to avoid duplication of sky textures in memory. 2012-10-03 12:40:01 +00:00
ShaderProgramFFP.cpp Fixes some unreferenced formal parameter warnings 2012-09-02 23:07:16 +00:00
ShaderTechnique.cpp Update renderer design to be more flexible and data-driven based on material and shader definitions. 2012-04-03 18:44:46 +00:00
ShaderTechnique.h Update renderer design to be more flexible and data-driven based on material and shader definitions. 2012-04-03 18:44:46 +00:00
SkeletonAnim.h apply patch from ticket 1944 added sound attribute to animations to optionally differentiate sound starting point 2013-07-02 11:44:46 +00:00
SkeletonAnimDef.cpp huge cleanup and conversion of most string handling (especially paths) to unicode 2009-11-03 21:46:35 +00:00
SkeletonAnimDef.h huge cleanup and conversion of most string handling (especially paths) to unicode 2009-11-03 21:46:35 +00:00
SkeletonAnimManager.cpp Adds more specific error messages to failed model or animation loading. 2012-02-21 05:00:21 +00:00
SkeletonAnimManager.h replace set/map with boost::unordered_* to reduce the number of expensive filesystem::basic_path::operator< calls based on a patch by ortalo (thanks!) 2011-02-19 21:24:39 +00:00
Terrain.cpp Fixes possible overflow in terrain position/normal calculation, based on patch by sanderd17. Fixes #1986 2013-06-25 00:57:42 +00:00
Terrain.h Compute camera height and zoom limits based on smoothed terrain heightmap. Fixes #794, based on patch by Dietger. 2012-04-18 20:39:00 +00:00
TerrainProperties.cpp # Support separate rotation and scaling for each terrain texture 2012-01-22 18:20:33 +00:00
TerrainProperties.h Terrain/decal materials (includes triplanar/normal/specular/emissive mapping); custom alphamaps 2012-08-07 18:21:16 +00:00
TerrainTextureEntry.cpp Fixes use of invalid pointer from temporary string (caused some invalid read warnings in Valgrind) 2013-03-07 03:54:41 +00:00
TerrainTextureEntry.h Terrain/decal materials (includes triplanar/normal/specular/emissive mapping); custom alphamaps 2012-08-07 18:21:16 +00:00
TerrainTextureManager.cpp Terrain/decal materials (includes triplanar/normal/specular/emissive mapping); custom alphamaps 2012-08-07 18:21:16 +00:00
TerrainTextureManager.h Terrain/decal materials (includes triplanar/normal/specular/emissive mapping); custom alphamaps 2012-08-07 18:21:16 +00:00
TerritoryBoundary.cpp More build fixes for FreeBSD. 2012-01-31 00:06:56 +00:00
TerritoryBoundary.h More FreeBSD build fixes. 2012-01-30 06:21:11 +00:00
TerritoryTexture.cpp Adds safe bool operator to ICmpPtr, replacing the null() method, based on patch by leper. Also changes bool operator in AtSmartPtr to safe bool. Fixes #1077. 2012-02-08 02:46:15 +00:00
TerritoryTexture.h # Initial support for territories 2011-07-20 19:48:06 +00:00
TextRenderer.cpp Avoid unnecessary use of printf in text renderer. 2012-02-25 17:14:47 +00:00
TextRenderer.h Avoid unnecessary use of printf in text renderer. 2012-02-25 17:14:47 +00:00
Texture.h # Add new texture loading system with automatic compression. 2010-09-10 21:02:10 +00:00
TextureConverter.cpp Displays error when converting a grayscale texture instead of possibly crashing, refs #1640 2012-08-30 19:24:24 +00:00
TextureConverter.h Renames our sdl.h to libsdl.h, to avoid case sensitivity errors when it includes SDL.h. 2012-01-12 23:32:27 +00:00
TextureManager.cpp Adds support for Boost.Filesystem v3, the only option in Boost 1.50. Fixes #1527. Refs #1360 2012-07-29 23:04:22 +00:00
TextureManager.h Makes some classes NONCOPYABLE, based on patch by Markus, refs #1852 2013-05-22 21:40:56 +00:00
Unit.cpp Change some size() > 0 to Based on patches by kuranes and Markus. Refs #1852, #1923. 2013-05-21 22:11:47 +00:00
Unit.h Adds building previews that rise during construction, fixes #1174, refs #21. 2013-02-03 02:08:20 +00:00
UnitAnimation.cpp apply patch from ticket 1944 added sound attribute to animations to optionally differentiate sound starting point 2013-07-02 11:44:46 +00:00
UnitAnimation.h apply patch from ticket 1944 added sound attribute to animations to optionally differentiate sound starting point 2013-07-02 11:44:46 +00:00
UnitManager.cpp Adds multiple entity selection to Atlas (including move/delete). Fixes #678. 2012-02-27 05:32:35 +00:00
UnitManager.h Adds multiple entity selection to Atlas (including move/delete). Fixes #678. 2012-02-27 05:32:35 +00:00