Commit graph

40 commits

Author SHA1 Message Date
Areloch
d680dc9934 Initial implementation of the new Base Game Template and some starting modules.
This makes some tweaks to the engine to support this, specifically, it tweaks the hardcoded shaderpaths to defer to a pref variable, so none of the shader paths are hardcoded.

Also tweaks how post effects read in texture files, removing a bizzare filepath interpretation choice, where if the file path didn't start with "/" it forcefully appended the script's file path. This made it impossible to have images not in the same dir as the script file defining the post effect.

This was changed and the existing template's post effects tweaked for now to just add "./" to those few paths impacted, as well as the perf vars to support the non-hardcoded shader paths in the engine.
2017-02-24 02:40:56 -06:00
Azaezel
cc9955e102 unused variable cleanup 2016-10-14 17:49:56 -05:00
James Urquhart
da6bcbeb2b Improvements to openvr code
- Overlays are implemented (sans input for the moment)
- Fixed a problem where the movemanager was using the wrong values for hmd rotation & position
2016-09-11 22:42:42 +01:00
James Urquhart
6283a6b9da Fix the pink water in D3D9 2016-08-21 01:43:30 +01:00
James Urquhart
3496c549b5 Hardware Skinning Support
- Supports GL, D3D9 & D3D11
- Extends vertex formats & shadergen to support blend indices and weights
- Adds basic support for using 4x3 matrices for shader constants
- Supports software fallback
2016-08-21 01:43:30 +01:00
Azaezel
758306c661 dx9 samplernames for fixed function replication shaders 2016-08-01 10:37:30 -05:00
rextimmy
7d82877f4e GFXD3D9Device generic shader support. 2016-07-02 17:08:28 +10:00
rextimmy
12621f876b Added GFXFormatR8G8B8A8_SRGB format. 2016-03-28 10:05:16 +10:00
rextimmy
41e5caf22b Direct3D11 Engine/source changes 2016-03-20 21:52:11 +10:00
Areloch
908be4818f Merge pull request #1519 from Azaezel/deferredShading
Deferred shading
2016-02-27 15:08:20 -06:00
Dušan Jocić
28d303c5ea Added immutable vertex and index buffers. 2016-02-20 21:28:18 +01:00
Azaezel
8c5810adad The final step (barring any overlooked missing bits, requested refactors, and of course, rolling in dependencies already submitted as PRs) consists of:
renderPrePassMgr.cpp related:
A) shifting .addFeature( MFT_XYZ); calls from ProcessedShaderMaterial::_determineFeatures to ProcessedPrePassMaterial::_determineFeatures
B) mimicking the "// set the XXX if different" entries from RenderMeshMgr::render in RenderPrePassMgr::render
C) fleshing out ProcessedPrePassMaterial::getNumStages() so that it shares a 1:1 correlation with ProcessedShaderMaterial::getNumStages()
D) causing inline void Swizzle<T, mapLength>::ToBuffer( void *destination, const void *source, const dsize_t size )  to silently fail rather than fatally assert if a source or destination buffer is not yet ready to be filled. (support for #customTarget scripted render targets)

Reflections:
A) removing reflectRenderState.disableAdvancedLightingBins(true); entries. this would otherwise early out from prepass and provide no color data whatsoever.
B) removing the fd.features.addFeature( MFT_ForwardShading ); entry forcing all materials to be forward lit when reflected.
C) 2 things best described bluntly as working hacks:
C1) when reflected, a scattersky is rotated PI along it's z then x axis in order to draw properly.
C2) along similar lines, in terraincellmaterial, we shut off culling if it's a prepass material.

Skies: scattersky is given a pair of rotations for reflection purposes, all sky objects are given a z value for depth testing.
2016-02-16 02:50:49 -06:00
Areloch
3a18819e1e Issue found by PVS Studio:
Several instances where we utilize a pointer variable without properly testing that they aren't null first.
2015-07-28 23:25:09 -05:00
Daniel Buckmaster
c2e5dc3345 Merge remote-tracking branch 'bpay/clang-cl-build-fixes' into development
Conflicts:
	Engine/source/T3D/shapeBase.h
2015-07-17 16:55:12 +10:00
James Urquhart
3a457749ec Oculus VR DK2 Support
- Updated to work with 0.5.x SDK
- Uses Oculus Rendering rather than PostFX
- Stereo rendering refactored so more rendering info is grabbed from the DisplayDevice
- Implements an Offscreen Canvas for in-game gui with oculus
- Message dialogs and metrics display can now go to the OffScreen Canvas (if oculus demo is setup correctly)
2015-05-06 23:09:51 +01:00
Ben Payne
6040a8d855 Fix macro token pasting errors when compiling with clang-cl 2015-03-04 19:10:53 -05:00
Luis Anton Rebollo
8da9b7461f Merge pull request #1085 from Azaezel/DX9CubemapMips
cubemap Mip retrieval-DX
2015-02-15 22:55:11 +01:00
Daniel Buckmaster
014b566014 Merge remote-tracking branch 'gg/development-3.6' into development
Conflicts:
	Engine/source/T3D/gameFunctions.cpp
2015-01-29 21:17:38 +11:00
Luis Anton Rebollo
ea0e3fd683 Merge pull request #1096 from bpay/fix-include-guards
Fix include guards
2015-01-24 23:02:13 +01:00
LuisAntonRebollo
475f218bcd Modified files for SDL2. 2015-01-18 22:52:29 +01:00
Ben Payne
b2b950c84a Add missing include guards to some headers 2015-01-06 00:42:33 -05:00
Azaezel
f1d382fcff cubemap Mip retrieval-DX
similar to opengl, if the textures comprising a cubemap contain mips, it retrieves them, otherwise it generates them.
2014-12-27 11:34:08 -06:00
LuisAntonRebollo
190f68b998 Fix SkatterSky flare occlusion. 2014-12-09 23:34:21 +11:00
LuisAntonRebollo
3067c3f0b2 Merge pull request #924 from BeamNG/remove_disableshader
Remove GFXDevice::disableShader
2014-11-30 02:47:46 +01:00
LuisAntonRebollo
0747a0efe9 Remove GFXDevice::disableShader becouse we are going to remove Fixed Function Pipeline and we need a shader for render. 2014-11-30 02:36:21 +01:00
LuisAntonRebollo
9c66aa0681 Merge pull request #931 from BeamNG/terrain_layer_format
Set correct terrain layer texture format.
2014-11-30 02:22:39 +01:00
LuisAntonRebollo
b81ebaa386 Set correct terrain layer texture format. 2014-11-08 18:19:14 +01:00
LuisAntonRebollo
79e158d528 Add sampler names to ShaderData for use on old versions of OpenGL and Opengl ES2 that not support explicit sampler location on shader files. 2014-11-08 17:50:37 +01:00
Daniel Buckmaster
97ae3445c9 Merge pull request #793 from lukaspj/Terrain-Basetex-Formats
Terrain basetex formats
2014-11-04 14:54:08 +11:00
Lukas Joergensen
f2a3a1e2a6 Enable RGB format for DDS files getting copied to bitmap. 2014-09-23 13:47:14 +02:00
Azaezel
4f3be25699 prevents an infinite while loop by putting a cap of 4MS on occlusion queries. 2014-07-18 00:40:11 -05:00
Thomas Fischer
cd978039ac Merge pull request #635 from just-bank/engine-fixes
Various engine fixes
2014-05-23 14:09:00 +02:00
bank
c7a5a12080 Fix wrong check for bits (using '&&' instead of '&'). 2014-05-06 12:40:44 +04:00
bank
9f2d44966e Fix: Some compilers do not auto-cast String and Path classes to (char *). 2014-05-06 12:40:43 +04:00
Daniel Buckmaster
87d9e245b7 Merge remote-tracking branch 'smally/platform_type_consistency' into platform-type-consistency
Conflicts:
	Engine/source/platform/platformCPUCount.cpp
2014-04-04 13:43:25 +11:00
Thomas Fischer
6d8e0d7e25 refactored platform precompiler variable: TORQUE_OS_WIN{32,64,} 2014-03-15 15:10:14 +01:00
cpusci
4c35fd37af Simple pass over the codebase to standardize the platform types. 2013-08-04 16:26:01 -05:00
Robert Fritzen
171a24459f Remove namespace from header
Removing the "using namespace Torque" from header file to prevent issues
with certain engine addons conflicting with ::UUID defined by windows
and Torque::UUID defined by T3D.
2013-07-28 12:55:52 -05:00
DavidWyand-GG
0d77cdc270 GFX now handles non-default adapters
The GFX (DirectX) pipeline did not respect the choice of adapter and
always went for the default one.  Normally this isn't an issue unless
you wish to target a particular adapter and display device combination.
This has been corrected.

The GFX initialize functions now attempt to find the best adapter that
matches a given display device (i.e. monitor) if one has been passed in.
To aid with choosing a display device some new monitor enumeration
methods have been added to the platform window manager.  These methods
have been exposed to the Canvas.
2013-04-09 12:50:17 -04:00
DavidWyand-GG
7dbfe6994d Engine directory for ticket #1 2012-09-19 11:15:01 -04:00