Commit graph

57 commits

Author SHA1 Message Date
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
7a3b40a86d Initial Implementation of the Taml, Asset and Modules systems.
Only has example and shape assets currently.
2015-10-13 15:19:36 -05:00
Azaezel
7df625ea14 Adds data to vector out of bounds reports
Like say, if it's crashing out due to being passed a -1, or adding past the end.
2015-08-12 16:17:08 -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
Daniel Buckmaster
a49c9abf41 Merge pull request #1258 from bpay/fix-bad-assert
Remove badly behaved assert
2015-07-12 16:11:48 +10:00
Raul Ferriz
5ef130d581 Fixed some random Worder warnings 2015-07-03 15:52:38 +02:00
Raul Ferriz
a5d34271f2 Fixed some minor compiler warnings on Linux 2015-06-28 22:29:23 +02:00
RichardRanft
6c9cff4c68 Update str.cpp
Fixed copy/paste error - now actually checks the parameter passed in....
2015-05-31 20:42:05 -07:00
RichardRanft
38413be513 Update str.cpp
Effectively copied dStrIsEmtpy() into String::isEmpty().
2015-05-24 22:43:27 -07:00
RichardRanft
3ddd9b8a4c Add static String::isEmpty(const char*) method and use it to verify path for Forest::saveDataFile() is not empty. 2015-05-06 15:39:02 -07:00
Ben Payne
fbcc79dcd0 Don't call strlen on data that might not be null-terminated 2015-03-17 11:31:18 -04:00
Ben Payne
608a43ba2a Don't define String operator bool when compiling w/ clang on windows
Fixes compile errors building with clang-cl, which doesn't define __GNUC__
in MS compatibility mode.
2015-03-04 19:25:12 -05:00
Ben Payne
0ffd7f5620 Fix member vars left uninitialized in constructors 2015-02-20 18:41:51 -05:00
Ben Payne
fcf52fb5e0 Rename the memory allocating versions to make prev error less likely
The behavior is different enough that these shouldn't be overloaded
with the non-allocating verions. Also makes it more obvious what is
going on to the caller.
2015-01-26 16:52:06 -05:00
Luis Anton Rebollo
6492028bb2 Merge pull request #1035 from bpay/memfixes
Memfixes
2015-01-25 13:42:32 +01:00
LuisAntonRebollo
4e9034854d Linux implementation. Include changes for gcc x64. 2015-01-24 22:08:26 +01:00
LuisAntonRebollo
3336bffad2 Changes for Linux. 2015-01-19 01:44:36 +01:00
Ben Payne
50238fb2ac Casts are stronger than necessary 2014-12-13 16:08:46 -05:00
Vincent Gee
acb192e2a5 Replaced a ton of ConsoleMethods with the DefineConsoleMethod Macro. 2014-11-03 22:42:51 -05:00
Daniel Buckmaster
2f416290ab Merge pull request #788 from eightyeight/return-status-code
Allow return status to be specified using quitWithStatus
2014-10-24 00:31:05 +11:00
Daniel Buckmaster
bedde94a9f Removed all local type definitions for GCC. 2014-09-29 14:31:07 +10:00
Daniel Buckmaster
178484ca6a Moved zip tests and commented them out :(. 2014-09-29 11:38:37 +10:00
Daniel Buckmaster
9f47032522 Allow return status to be specified using quitWithStatus. 2014-09-24 09:24:29 +10:00
Daniel Buckmaster
5f42f63078 Fixed dates. 2014-08-09 11:31:29 +10:00
Daniel Buckmaster
5c6d22a059 Ported process and journal tests. 2014-08-03 21:20:18 +10:00
Daniel Buckmaster
552cb87770 Ported FixedSizeDeque test. 2014-07-17 10:22:02 +02:00
Daniel Buckmaster
18c5c25297 Ported path test. 2014-07-15 23:57:02 +02:00
Daniel Buckmaster
3cdfcb19d4 Ported string tests. 2014-07-15 14:46:27 +02:00
Daniel Buckmaster
2f2d7cf388 Ported swizzle test. 2014-07-15 14:12:31 +02:00
Daniel Buckmaster
dbc0dff52b Align test file name with actual file name. 2014-07-08 19:09:26 +02:00
Daniel Buckmaster
b48050209d Replaced existing Vector tests. 2014-07-08 17:08:43 +02:00
Daniel Buckmaster
feec36731e Merge pull request #594 from LuisAntonRebollo/unit-tests-without-crash
Increased stability Torque3D: unit-tests running without a crash.
2014-06-16 10:57:04 +10:00
LuisAntonRebollo
4fcdc04214 Merge pull request #674 from eightyeight/fix-tsignal-mtriggernext
Fix SignalBase constructor shenanigans
2014-06-15 21:24:38 +02:00
LuisAntonRebollo
6450294855 Fixes for dedicated build on linux.
Thx @Bloodknigh for Signal fix.
2014-05-30 12:35:39 +02:00
Daniel Buckmaster
2a1a412d74 Don't assign NULL to a Vector. 2014-05-29 17:40:57 +10:00
Thomas Fischer
353ecb5961 Merge pull request #670 from BeamNG/fix_string_dereference_null_ptr
Fix Dereference of null pointer on String::operator+=
2014-05-25 18:42:23 +02:00
LuisAntonRebollo
18ba0646c0 Increased stability Torqu3D: unit-tests running without a crash. See the console.log after ran unitTest_runTests( "", true ). @signmotion 2014-05-25 16:50:19 +02:00
Thomas Fischer
cd978039ac Merge pull request #635 from just-bank/engine-fixes
Various engine fixes
2014-05-23 14:09:00 +02:00
Thomas Fischer
08e6b261a3 Merge pull request #628 from BeamNG/fix_cmake_crash_on_t3d_exit
Fix crash on exit T3D when build with CMake.
2014-05-13 09:12:33 +02:00
LuisAntonRebollo
32a73f9eb2 Fix Dereference of null pointer on String::operator+=. 2014-05-11 19:46:43 +02:00
Daniel Buckmaster
1702573b78 Merge pull request #612 from GarageGames/platform-type-consistency
Platform type consistency
2014-05-10 11:40:40 +10:00
Daniel Buckmaster
f69eccfdb4 Merge pull request #600 from BeamNG/rename_Status
Rename Status enum for avoid conficts on Linux.
2014-05-10 11:01:28 +10:00
bank
15bad30b2c Fix: Underflow of the buffer 'ctx'.
memset function should not receive sizeof of the pointer.
2014-05-06 12:40:43 +04:00
bank
ff3d72747e Fix FixedSizeVector() initialization.
mArray[6] was never assigned (ownerless experssion).
2014-05-06 12:40:40 +04:00
LuisAntonRebollo
881d578aae Fix crash on exit T3D when build with CMake.
Process::_signalProcess is destroyed first, and then Win32WindowManager::~Win32WindowManager() try to remove from deleted Signal causing a crash.

SlotSignal handle this automatically.
2014-04-23 21:17:15 +02:00
LuisAntonRebollo
0137c86765 Add SlotSignal for handle automatic disconnect on Signal or SignalSlot destruction.
Example:

```
Win32WindowManager::Win32WindowManager()
{
   // Register in the process list.
   mOnProcessSignalSlot.setDelegate( this, &Win32WindowManager::_process );
   Process::notify( mOnProcessSignalSlot, PROCESS_INPUT_ORDER );

   // When Signal it's destroyed, all slots are disconected.
   // When a SignalSlot it's destroyed, it's disconected from Signal.
}

```
2014-04-23 21:16:00 +02:00
LuisAntonRebollo
4a17d6ceb0 Rename Status enum for avoid conficts on Linux. 2014-04-06 22:14:19 +02: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
32abd2c149 Merge pull request #553 from signmotion/add-vector-reverse
Added method Vector::reverse().
2014-03-22 21:51:30 +01:00
Thomas Fischer
6d8e0d7e25 refactored platform precompiler variable: TORQUE_OS_WIN{32,64,} 2014-03-15 15:10:14 +01:00