1
0
forked from 0ad/0ad
Commit Graph

37 Commits

Author SHA1 Message Date
71f1d3ed68 Consistently declare CRendererInternals as a struct, not a class.
This was SVN commit r3155.
2005-11-19 16:37:50 +00:00
5087732fe3 Refactor ProfileViewer into a singleton that uses AbstractProfileTable as
data model.
Profile.cpp implements AbstractProfileTable so the original
functionality
of the profiling display remains.
CRenderer also contains an AbstractProfileTable implementation that
displays
the rendering stats. Switch through different profile views using F11.

This was SVN commit r3154.
2005-11-19 16:15:34 +00:00
0346ba1b18 Refactor model rendering to perform vertex setup in ModelVertexRenderer.
Sort all transparent models by distance to camera (however, do not sort
polygons by default).

This was SVN commit r3096.
2005-11-05 23:15:23 +00:00
875cb3bca1 Add ARB_vertex_shader specific functions to glext_funcs.h
Add an "instancing" model renderer to improve rendering of
non-transparent,
unanimated models. This renderer is used when the vertexshader path is
rendering path is used.

This was SVN commit r3052.
2005-10-30 00:22:22 +00:00
b10534d224 Transform normals using the original bone matrix instead of the inverse of the
transpose. This assumes orthogonal transformations (which we have
exclusively,
as far as I can tell), but is significantly faster, because calculating
the
inverse is slow.

This was SVN commit r3041.
2005-10-28 19:25:47 +00:00
b7df6f7fbf Do not sort transparent models by default.
This was SVN commit r3012.
2005-10-25 02:22:22 +00:00
82ee484821 Massive rewrite/refactoring of the model rendering system.
Performance impact:
+ Player color rendered models are batched like normal models
- Transparent sorted models never use the vertex shader path

This was SVN commit r3009.
2005-10-25 01:43:07 +00:00
d7996c104a CInput: swapped direction of mouse-wheel scrolling.
wsdl: initialise handles such that wsdl_shutdown doesn't try to close
them if they remain unchanged.
GameSetup: made work in Atlas.
Renderer: fixed progressive loading of water textures.

This was SVN commit r2941.
2005-10-14 21:59:08 +00:00
990e343ae6 renderer: load/unload water textures (similar to alpha maps); do that in delay load and avoid leaking them.
GUIrenderer: add oglSquelchError

lib.h: add feq() (checks for floating point equality); remove redundant
if from SAFE_DELETE
maths: use new feq()
Model*RData, VertexArray: fix trivial warnings

This was SVN commit r2904.
2005-10-12 04:16:41 +00:00
de5361047a Player colour rendering fallback now looks exactly the same as the fast path
again (using multi-pass).

This was SVN commit r2902.
2005-10-12 01:07:01 +00:00
6efb1e1c00 Single pass player color rendering.
Falls back to a simpler formula when only 2 TMUs are available.
CRenderer is now a JS object called "renderer" for scripting.

This was SVN commit r2891.
2005-10-10 14:15:28 +00:00
57cfc7c6ac Made LOS drawn using terrain vertex color (which requires some terrain render data to be rebuilt each frame, but is faster).
This was SVN commit r2878.
2005-10-09 04:40:18 +00:00
0ed2815c8b Added initial version of LOS, and updated minimap to show both LOS and water.
LOS issues still outstanding:
- LOS looks ugly because of quad tesselation into 2 triangles
- Quad tesselation is unspecified by OpenGL (in fact using GL_QUADS on
LOS quads seemed to give different tesselations than it did for the
underlying terrain quads, but terrain rendering also used GL_QUADS).
This should be fixed once we decide on the quad tesselation issue.
- Units with traits.vision.permanent set are visible through FOW even if
you havent seen them before; this should only be true when you have seen
them before. But it gets even more complicated - if a permanent unit
seen through FOW dies or gets upgraded or something, perhaps you should
remember the old version. I'm not completely sure how to do this
(probably involves cloning its actor somehow).

This was SVN commit r2876.
2005-10-09 03:43:03 +00:00
dbd58f4011 Remove CRenderer::Close(), which wasn't called anyway and the only reasonable
calling site would have been just before the destructor.
m_VertexShader is no longer leaked.

This was SVN commit r2860.
2005-10-06 16:07:36 +00:00
f1ee2cd66d Add the notion of render paths and an appropriate configuration option.
Add Ogl_Shader and Ogl_Program handle types for shaders/programs loaded
from
files.
In the vertexshader render path, use a vertex program for lighting for
optimization.

This was SVN commit r2853.
2005-10-05 16:42:09 +00:00
a05e712319 Added VertexArray & co. classes to simplify a flexible, render path dependent
vertex array layout.
Add CModelDefRData, a per-CModelDef render data class.

This was SVN commit r2826.
2005-10-02 21:11:11 +00:00
a92e92cd46 Basic GL_ARB_vertex_shader detection.
Remove a redundant copy operation in ModelRData::BuildVertices

This was SVN commit r2822.
2005-09-30 22:23:48 +00:00
f2cae8cb9b Added animated water.
This was SVN commit r2783.
2005-09-27 18:17:45 +00:00
1c71c72e74 Fix for Linux build:
Header filenames in #include are case sensitive

This was SVN commit r2764.
2005-09-25 21:17:35 +00:00
13501cf58b hook up emulate_glCompressedTexImage2D to new tex transform code (which takes care of DDS unpack)
to that end, provide support for "wrapping" existing textures so that
tex_* and ogl_tex* calls may be used.

also have renderer use ogl_tex for its created-on-the-fly composite
alpha texture
also named atlas's thread (for fun+profit during debugging)

This was SVN commit r2754.
2005-09-19 22:48:20 +00:00
603c475cf0 This was SVN commit r2749. 2005-09-18 06:28:23 +00:00
e5dea3e5a1 Water source code :|.
This was SVN commit r2746.
2005-09-18 03:47:15 +00:00
a69ac0dee9 - fix w4 warnings
- add convenience macros for config_db(CFG_GET_SYS_VAL)
- VFSUtil::EnumDirEnts now uses flags instead of bool recursive
- UNUSED() for params, UNUSED2 (<- need better name) for variables
- config.h defines must be tested with #if (always defined) -> allows
detecting misspellings thanks to compiler warnings
- replace debug_assert(0) with debug_warn (its sole purpose)
- replace ScriptingHost::ValueToInt et al with ToPrimitive
- use nommgr.h to disable both mmgr and VC debug heap

This was SVN commit r2585.
2005-08-09 15:55:44 +00:00
f0e311440e all functions called via delay-load mechanism now return int (allows closures that can interrupt themselves when time is up)
This was SVN commit r2231.
2005-05-03 21:36:57 +00:00
f19d8dafee improved update frequency and accuracy of progress bar (by splitting up more init functions).
also add thunk mechanism to ease binding to member functions;
finally, added instrumentation to measure how long functions really take

This was SVN commit r2038.
2005-03-22 21:00:56 +00:00
308535d58d add instrumentation to see what's slow when starting a session
renderer: also move list of alpha maps here from InitResources

This was SVN commit r2007.
2005-03-18 22:02:20 +00:00
NoMonkey
761dfde0c5 This was SVN commit r1803. 2005-01-24 06:14:13 +00:00
465ceff912 More leak fixes
This was SVN commit r1514.
2004-12-16 12:41:54 +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
Calefaction
955ddcf9a1 More programmable pipeline updates
This was SVN commit r1280.
2004-10-30 21:57:46 +00:00
0a4c838185 Exciting space->tab transformations
This was SVN commit r1265.
2004-10-21 15:04:19 +00:00
Calefaction
50dee130ae Updated to properly support LOD bias settings in config. Fixes mipmap blurryness.
This was SVN commit r1254.
2004-10-17 21:01:00 +00:00
b2afef529c Introducing: The Pre-Game State. The game instance is not created on program load as before, but can be started by JS functions.
This was SVN commit r912.
2004-08-05 13:07:51 +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
1eaadd38aa ran everything though mark's newline stomper.
This was SVN commit r322.
2004-05-30 00:46:58 +00:00
notpete
6f20408595 Moved from terrain; contains a whole load of changes related to shadows, props and animation.
This was SVN commit r302.
2004-05-29 20:51:42 +00:00