1
0
forked from 0ad/0ad
Commit Graph

34 Commits

Author SHA1 Message Date
7d8dc05c68 Fixes actor viewer bug where view was obstructed by map's water level. Fixes #1562.
Adds water plane option to actor viewer.

This was SVN commit r12715.
2012-09-28 18:20:36 +00:00
88ab3f0f5b Terrain/decal materials (includes triplanar/normal/specular/emissive mapping); custom alphamaps
This was SVN commit r12306.
2012-08-07 18:21:16 +00:00
5009636e39 Improve Android compatibility.
Basic touchscreen input for testing.
Better GLSL support for map rendering.

This was SVN commit r11155.
2012-02-25 17:29:27 +00:00
4bf59b9a7d More GLES compatibility, mainly around terrain rendering.
This was SVN commit r11059.
2012-02-13 14:02:14 +00:00
531b40578a More GLES compatibility.
Add config option to disable hardware cursors on Windows.

This was SVN commit r11053.
2012-02-12 20:45:31 +00:00
7f679a7975 # Support separate rotation and scaling for each terrain texture
This was SVN commit r10952.
2012-01-22 18:20:33 +00:00
vts
85186c98b2 Better selection boxes. Closes #914, #295, #810.
This was SVN commit r10593.
2011-11-25 06:36:13 +00:00
b08e142193 Graphics optimisations and features from eihrul.
Add shadow filtering (PCF) option.
Fix ugly shadow saturation in old lighting mode.
Fix fancy water shader.
Fix camera matrix computation.
Support scissoring of camera frustum.
Optimise vertex skinning.
Inline various matrix functions.
Support filtering of the list of submitted models before a rendering
pass, for more precise culling.
Optimise water renderer (fixes #721, based on patch by ortalo).
Use scissoring when generating reflection/refraction textures.
Skip reflection/refraction texture generation when no water is visible.
Render alpha-blended objects differently (fixes #434).
Reduce shadow swimming effects.

This was SVN commit r9814.
2011-07-12 23:48:05 +00:00
1014da1f88 Use pool allocator to avoid apparently expensive dynamic allocations when rendering terrain.
Add function to get pool usage, for debugging.

This was SVN commit r9132.
2011-03-30 21:42:35 +00:00
d295dacb9b # Add new renderer mode based on GL_ARB_fragment_program.
Change lighting model for new maps to allow better overbrightness.
Cache player colours instead of loading from scripts every time the
renderer wants them.

This was SVN commit r9123.
2011-03-26 20:17:21 +00:00
d24c93237c # Initial version of terrain decal textures.
Rejig CModel to support non-mesh-based props.
Avoid redundant recomputation for non-moving CRenderableObjects.

This was SVN commit r9055.
2011-03-13 19:22:05 +00:00
ba8163e248 # Explicitly triangulate terrain tiles.
Store blend splats as indexed triangles.
Remove unnecessary copy of vertex data.
Fixes #169.

This was SVN commit r9054.
2011-03-13 19:10:38 +00:00
fc2c54c39f # Optimise terrain renderer.
Batch patch splats by texture match.
Use VBOs for patch indices.
Fixes #722.

This was SVN commit r9053.
2011-03-13 19:06:33 +00:00
02e7eb69ff # Add solid black sides to the map, to hide underwater terrain.
This was SVN commit r8886.
2011-02-03 14:36:54 +00:00
cb78822f19 Delete some unused bits.
This was SVN commit r8883.
2011-02-03 01:17:16 +00:00
fe21c5e023 # Rewrite fog-of-war rendering.
Disable shadows when only 2 TMUs available.
Clean up some other rendering code.

This was SVN commit r8882.
2011-02-03 01:12:24 +00:00
18189ef4fc Simplify terrain blend rendering to use non-indexed arrays
This was SVN commit r8878.
2011-01-30 14:43:35 +00:00
03c75100ab # Fix terrain blending logic.
Add terrain priority rendering mode in Atlas.
Fix terrain painting in Atlas to be less profligate with priority
values.
Support hotloading of blend textures.
Clean up some trivial things.

This was SVN commit r8872.
2011-01-29 16:31:48 +00:00
67a94572ec # Add new texture loading system with automatic compression.
Replace almost all texture uses with calls to the new system.
Add some anistropic filtering to terrain textures.
Let Atlas load terrain texture previews partly-asynchronously by
polling.
Fix inefficient texture colour determination for minimap.
Remove unused global g_TerrainModified.
Change GUI texcoord computation to be less efficient but to cope with
dynamic texture changes.
Fix GUI renderer effects leaving bogus colour state.

This was SVN commit r8099.
2010-09-10 21:02:10 +00:00
c9fa7f13d9 Add GPL header
This was SVN commit r6830.
2009-04-18 17:00:33 +00:00
c0ed950657 had to remove uint and ulong from lib/types.h due to conflict with other library.
this snowballed into a massive search+destroy of the hodgepodge of
mostly equivalent types we had in use (int, uint, unsigned, unsigned
int, i32, u32, ulong, uintN).

it is more efficient to use 64-bit types in 64-bit mode, so the
preferred default is size_t (for anything remotely resembling a size or
index). tile coordinates are ssize_t to allow more efficient conversion
to/from floating point. flags are int because we almost never need more
than 15 distinct bits, bit test/set is not slower and int is fastest to
type. finally, some data that is pretty much directly passed to OpenGL
is now typed accordingly.

after several hours, the code now requires fewer casts and less
guesswork.

other changes:
- unit and player IDs now have an "invalid id" constant in the
respective class to avoid casting and -1
- fix some endian/64-bit bugs in the map (un)packing. added a
convenience function to write/read a size_t.
- ia32: change CPUID interface to allow passing in ecx (required for
cache topology detection, which I need at work). remove some unneeded
functions from asm, replace with intrinsics where possible.

This was SVN commit r5942.
2008-05-11 18:48:32 +00:00
b755ddefda remove all author/modified by tags.
make include guards consistent.

This was SVN commit r5040.
2007-05-07 16:33:24 +00:00
2f53eea71a Actor Viewer: Added controls for wireframe, background colour, move-when-walking. Reduced CPU usage when 'playing' things with no animation.
Color: Moved SColor* structs into SColor.h, so they can be used without
indirectly including CVector[34]D.
Terrain: Added 'base colour', for the Actor Viewer to be able to
modulate the colour of normally-white terrain.
Removed some "using namespace std" (because it doesn't make the code
easier to read, and it defeats the point of namespaces, and the rest of
the code doesn't do it).

This was SVN commit r4392.
2006-09-26 01:44:20 +00:00
5f7855f7f0 Simplification of #Include paths: relative names are used only for included files in the same directory as the including file; everything else uses the full path relative to source/.
This was SVN commit r3930.
2006-06-02 02:10:27 +00:00
3d26549032 Fixed file properties - removed svn:executable and svn:keywords (left over from CVS conversion?) from all files; set svn:eol-style=native for *.cpp, *.h (and fixed files with inconsistent line endings)
This was SVN commit r3802.
2006-04-23 23:14:18 +00:00
7dee30e24c - Terrain self-shadows (only noticeable with a low angle of sun)
- explicitly split ambient and diffuse
- add renderer.shadowZBias to bias depths in the depth texture
  and avoid flickering artifacts caused by Z fighting
- cantabrian_generated uses new light values so that shadows aren't
pitch
  black

This was SVN commit r3508.
2006-02-13 14:18:20 +00:00
b889826a3d Some Linux compile fixes over the place.
Create TerrainRenderer, ShadowMap and WaterManager classes to divide
CRenderer's functions into more logical units.

This was SVN commit r3332.
2006-01-07 01:04:26 +00:00
db0846c53f All pglXYZ functions should be available everywhere (independent of system
GL headers).
Some minor cleanup in the patch rendering code.

This was SVN commit r3269.
2005-12-18 02:04:24 +00:00
c468eedbbb Sped up LOS rendering.
This was SVN commit r2880.
2005-10-09 08:14:42 +00:00
77196dbe06 less dependencies on res/res.h in headers (a bad thing) => less recompiles when I change vfs.h :)
This was SVN commit r1467.
2004-12-07 02:04:38 +00:00
notpete
81c829ec4c Minor changes.
This was SVN commit r1217.
2004-10-06 18:44:47 +00:00
MarkT
e4fe4ed602 JS Interface to entities. It even partially works now.
This was SVN commit r469.
2004-06-10 22:24:03 +00:00
notpete
a7d0c194ad Reworked model and terrain rendering to use new VertexBuffer classes; many other smaller changes.
This was SVN commit r411.
2004-06-07 19:53:58 +00:00
notpete
2cbc27174c Moved from terrain directory.
This was SVN commit r304.
2004-05-29 20:53:40 +00:00