Christoph Oelckers
7b65e6d424
- use glMapBuffer instead of glMapBufferRange on older hardware.
2016-05-04 19:16:07 +02:00
Christoph Oelckers
bdb7594e60
- fixed: Incomplete model definitions flagged the actor as having a model, which could cause a crash.
2016-05-04 14:25:58 +02:00
Christoph Oelckers
54571beaca
- reset the path to "" before a model definition is parsed.
2016-05-04 12:28:35 +02:00
Christoph Oelckers
fd8a59bd24
- fixed: INHERITACTORPITCH was inverted.
...
- changed PITCHFORMOMENTUM to do nothing for very small velocities.
2016-05-04 12:23:40 +02:00
Christoph Oelckers
b6af4677f3
- implemented model precaching.
2016-05-03 18:14:16 +02:00
Christoph Oelckers
534500f36d
- fixed software-based model interpolation.
2016-05-03 16:49:10 +02:00
Christoph Oelckers
f7fda94ec9
- changed model data to store models and textures by index instead of by pointer.
...
The indices are needed for efficient precaching and actual changes to the logic are minor so that this was the best option overall.
2016-05-03 15:45:21 +02:00
Christoph Oelckers
4d7be0e20e
- added software interpolation as a fallback for models.
...
This is not tested yet so no guarantees!
2016-05-03 13:10:00 +02:00
Christoph Oelckers
50ba1ecde8
- add menu patching for GL 2.x mode.
...
- use stdint types in model code, because we have to start somewhere with the transition.
2016-05-01 13:09:13 +02:00
Christoph Oelckers
434e39e62f
- made adjustments to ZDoom's last changes.
2016-04-28 17:55:58 +02:00
Christoph Oelckers
eb27057853
- enable shader-less rendering. Still very incomplete, but at least the basics are working.
2016-04-26 16:44:03 +02:00
Christoph Oelckers
3b1500438d
- got rid of VAO's. they have no impact on performance and are a general nuisance if some render paths cannot use them.
...
- cleaned up gl_interface and removed gl.compatibility.
2016-04-26 16:26:34 +02:00
Christoph Oelckers
d66a28fcde
- fixed offsetting of player weapon sprites.
2016-04-13 16:24:25 +02:00
Christoph Oelckers
58eb64a7e0
- fixed a few fixed/float parameter mixups.
2016-04-03 12:54:47 +02:00
Christoph Oelckers
37bb816850
- some adjustments for voxels.
2016-03-24 16:10:17 +01:00
Christoph Oelckers
b54b34a512
- adjustments for floating point changes.
2016-03-21 02:57:02 +01:00
Christoph Oelckers
ae1571158c
- fixed: The portal link table was not created when there were no sector portals.
...
- fixed: P_TryMove could loop endlessly over a list of static portals when there was an error during portal creation.
2016-03-12 17:43:36 +01:00
Christoph Oelckers
dda73b531c
Merge branch 'master' of https://github.com/rheit/zdoom
...
# Conflicts:
# src/CMakeLists.txt
# src/p_setup.cpp
# src/r_defs.h
# src/version.h
This only updates to a compileable state. The new portals are not yet functional in the hardware renderer because they require some refactoring in the data management first.
2016-02-05 12:31:41 +01:00
Christoph Oelckers
a59824cd88
- fixed: MD2 vertex indices were signed shorts but should be unsigned.
...
- fixed a few warnings from Visual C++ 2015.
2015-05-07 11:36:31 +02:00
Christoph Oelckers
052dda0fdd
- made MD3 models reloadable.
2015-04-12 19:42:03 +02:00
Christoph Oelckers
feeebf5265
- rework MD2 code for reloading/precaching of geometry data.
2015-04-12 18:26:52 +02:00
Christoph Oelckers
4f08b20df5
- consider pixel stretching when rendering models. For non-voxels an aspect ratio of 1:1 must always be assumed while voxels need to be stretched so that 1 voxel unit == 1 map unit.
2014-12-31 12:53:29 +01:00
Christoph Oelckers
5a91fd0ad4
- fixed: DMD models didn't load their triangle data.
...
- fixed: MD2 models didn't handle the triangles' byte order.
2014-10-24 13:03:26 +02:00
Christoph Oelckers
f8016bef86
- fixed: voxels didn't set their index count.
2014-10-24 11:52:45 +02:00
Christoph Oelckers
e5cd90f323
- use separate vertex buffers per model to avoid large memory usage peaks. Also delete the geometry data for the models once it has been copied into the vertex buffer.
2014-10-24 11:43:25 +02:00
Christoph Oelckers
618c23303f
- fixed: The interpolation factor for models was never passed to the shader.
2014-10-23 09:57:27 +02:00
Christoph Oelckers
ead8a2874d
- fixed: The texture mode implied by render style did not work for models.
2014-10-05 12:03:55 +02:00
Christoph Oelckers
da87a34a6f
- fixed: MODELDEF's FrameIndex command was case sensitive.
2014-09-21 09:40:41 +02:00
Christoph Oelckers
4bb320a27c
- route texture binding through the renderstate class for better control. Currently it's just a direct passthrough but this will change.
2014-09-09 12:00:42 +02:00
Christoph Oelckers
1050013017
major cleanup of the texture manager:
...
- use sampler objects to avoid creating up to 4 different system textures for one game texture just because of different clamping settings.
- avoids flushing all textures for change of texture filter mode.
- separate sprite and regular dimensions on the material level to have better control over which one gets used. It's now an explicit parameter of ValidateTexture. The main reason for this change is better handling of wall sprites which may not be subjected to such handling.
- create mipmaps based on use case, not texture type.
- allows removal of FCloneTexture hack for proper sharing of the same sprite for decals and other purposes.
- better precaching of skyboxes.
2014-08-22 23:50:38 +02:00
Christoph Oelckers
192daf1d5a
Merge branch 'master' into Glew_Version_For_Real
2014-07-27 21:57:38 +02:00
Christoph Oelckers
ece10bb57f
- fixed several incorrect uses of abs instead of fabs.
2014-07-27 21:57:05 +02:00
Christoph Oelckers
77d9d9b2a5
- fixed: For updating the model VAO's attribute pointers it is necessary to first bind the vertex buffer we need to refer to, because this is not part of the VAO's state.
2014-07-27 11:53:18 +02:00
Christoph Oelckers
eedc5a69be
- replaced builtin position vertex attribute.
2014-07-15 01:02:48 +02:00
Christoph Oelckers
1b7f5a2e6a
- replaced builtin texture coordinate vertex attribute.
2014-07-15 00:59:01 +02:00
Christoph Oelckers
2214c0ac06
- remove all uses of builtin matrix manipulation. Only glLoadMatrix for view and projection matrix are left.
2014-07-13 22:37:34 +02:00
Christoph Oelckers
dbb05c5f33
- remove use of builtin texture matrices.
...
- make matrix class single precision.
2014-07-13 20:41:20 +02:00
Christoph Oelckers
9a6bc64381
- use vertex array objects to manage vertex buffers.
2014-07-01 00:51:02 +02:00
Christoph Oelckers
5ee626459d
- use model vertex buffer to render voxels.
2014-06-30 18:57:24 +02:00
Christoph Oelckers
6efefd9b7f
- use vertex buffer to render MD3 models.
2014-06-30 18:02:52 +02:00
Christoph Oelckers
1efc2938b7
- implement model vertex buffer and draw MD2 models using it instead of using the GLCommands from the model.
2014-06-29 23:24:16 +02:00
Christoph Oelckers
2925c96b59
removed all GL 2.x code.
...
After thinking about it for a day or so I believe it's the best option to remove all compatibility code because it's a major obstacle for a transition to a core profile.
2014-06-21 15:50:32 +02:00
Christoph Oelckers
ca76c2525e
- more vertex buffer stuff for models, still not tested.
2014-06-19 22:24:33 +02:00
Christoph Oelckers
5944894138
- create vertex buffer data for MD2/DMD models.
2014-06-19 17:06:26 +02:00
Christoph Oelckers
3e9b9c280b
- initialize model data at engine start, not at level start.
2014-06-19 15:22:00 +02:00
Christoph Oelckers
412d6499d9
- removed the voxel vertex buffer because it needs to be gone before implementing a model vertex buffer.
2014-06-19 14:46:55 +02:00
Christoph Oelckers
03916d75de
- cleaned up MD3 rendering and merged RenderFrame and RenderFrameInterpolated into one function.
2014-06-19 13:58:49 +02:00
Christoph Oelckers
59522f7065
- simplified MD2 drawing code as preparation for a buffer based implementation.
2014-06-19 13:37:30 +02:00
Christoph Oelckers
965a2a2d79
definition for model vertex buffer.
2014-06-15 21:56:37 +02:00
Christoph Oelckers
8d9a90cd22
- rewrote sky dome rendering to use a static vertex buffer if not on OpenGL 2.x.
2014-06-14 01:24:28 +02:00