Commit Graph
31 Commits
Author SHA1 Message Date
asarium 15dc45cc0a Remove -old_collision command line option
The new system has been tested pretty thoroughly so I think it is time
to remove this option.
2018-10-21 18:36:59 +02:00
asarium 8f06e338a4 Add typesafe handle types and use it in game sound system
This adds a new class which allows to create type safe resource handle
types. At the moment, the engine uses ints pretty much everywhere for
providing handles to resources created by the specific subsystems. Since
all ints are the same to the C/C++ typesystem it is perfectly legal to
pass a sound handle to the graphics API as a buffer handle which will
obviously cause issues.

This adds a new type called "ID" which is a wrapper class for a generic
handle but with added type safety. An instance of this class cannot be
passed to a function expecting another type of handle which provided
compile-time type safety for these APIs.

As an initial test I converted the game sound handles to this new type.
I already found a bug in the mainhall system thanks to this new type.
The mainhall used the game sound handles as sound instance handles which
probably meant that that specific code never really worked right. I
removed the code since there was no better alternative for fixing it.
2018-04-22 16:22:45 +02:00
asarium 0522566790 Replace direct usages of Snds vector with a function call
This will make it easier to validate the used handles and is generally
better since it doesn't require a global sounds vector.
2017-10-09 15:02:29 +02:00
asarium bbeaaa1565 Add a new particle effect system
This is similar to the script I wrote a few years ago but unlike that
one, this solution doesn't kill the performance.
2016-08-04 11:08:39 +02:00
asarium 1bcd5400d3 Move build system to CMake 2016-07-22 12:07:19 +02:00
Echelon9 c5493bb480 Scripted sort and uniq on (internal) project includes. Improves search time and as a by product removed a number of duplicative includes. 2015-06-22 20:24:30 +10:00
z64555 8d5fbab768 z64555's debug console. Take 2. Includes changes to most (not Xcode) project files to include the added files of r10621
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10622 387891d4-d844-0410-90c0-e4c51a9137d3
2014-05-08 19:18:37 +10:00
The_E 98355da7d5 Revert 10619: Missing files
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10620 387891d4-d844-0410-90c0-e4c51a9137d3
2014-05-08 19:18:36 +10:00
z64555 2b2ba832f8 z64555's debug console.
git-svn-id: svn://svn.icculus.org/fs2open/trunk/fs2_open@10619 387891d4-d844-0410-90c0-e4c51a9137d3
2014-05-08 19:18:36 +10:00
Swifty c6c12fc251 go_even_faster: Improved collision detection performance by rewriting broadphase and narrowphase testing. 2012-08-11 21:14:53 +00:00
Goober5000 dc456c667b restore code that was inadvertently deleted, fixing Mantis #2478 2012-05-20 19:25:38 +00:00
Goober5000 6812854419 supernova-stop sexp, written by CommanderDJ 2012-05-11 06:34:49 +00:00
Zacam 2b44f6325b The hell...? Missed one somehow. 2010-10-18 20:55:08 +00:00
Zacam 59a360a139 Sun OS compatibility: "Sun" is a reserved word, so (*sun) becomes (*sun_ptr), (bool sun) becomes (bool is_a_sun), etc.
Also: void stars_delete_instance_FRED is now void stars_delete_entry_FRED in the CPP to better match the H.
White-space clean-up took place too.
2010-10-18 19:29:38 +00:00
portej05 719825f80d The big CVS comment removal. This chops approx. 3.5mb off a full checkout.
I've tested this through compiling and through hand checking. 
Normalises line endings in ALL files to \n.
2009-06-20 08:08:20 +00:00
Goober5000 dfb8d4cadf clean-up the end-campaign sexp logic and fix the end-of-campaign movie playing
this leaves room for possible future specification of end-of-campaign movies
2009-06-16 04:14:27 +00:00
WMCoolmon ddf75fc7e0 Final scripting, camera code updates. 2008-08-30 11:05:48 +00:00
Goober5000 a02c579e07 Shade's fix for #1329 (approximately) 2007-09-02 19:06:02 +00:00
Goober5000 996ac6d6ab --grouped the shake/shudder code together a bit better
--added a sexp to generate shudder
--fixed a minor bug in lock-perspective
2007-05-14 23:13:51 +00:00
Goober5000 3c3416fa3b the great big duplicate model removal commit 2007-02-20 04:20:38 +00:00
taylor 0107652287 maybe optimize the (PI/2), (PI*2) and (RAND_MAX/2) stuff a little bit 2006-08-19 04:38:47 +00:00
taylor 99a1c64fbb fix slight freakiness with debris vclips (un)loading
comment out some code which was only used if neither D3D or OGL
fix dumb particle_emit() calls
2006-05-27 16:42:16 +00:00
taylor ac5d72045b dynamic starfield bitmaps (if the thought it was freaky before, just take a look at the new and "improved" version ;)) 2006-01-30 06:31:30 +00:00
taylor aed9394b5c some supernova fixing 2005-07-02 19:36:04 +00:00
taylor 7f786136a6 s/vector/vec3d/g, better support for different compilers (Jens Granseuer) 2005-04-05 05:53:25 +00:00
Kazan 864e1b5922 remove MCD complete 2004-07-26 20:47:56 +00:00
Kazan 428b3dcbc9 MCD - define _MCD_CHECK to use memory tracking 2004-07-12 16:33:09 +00:00
Goober5000 7ef2ab2e39 Uber pass at reducing #includes
--Goober5000
2004-03-05 09:02:13 +00:00
penguin 0c503be8d1 The big include file move 2002-08-01 01:41:11 +00:00
penguin 8f92eebd34 Warpcore CVS sync 2002-06-03 04:10:40 +00:00
penguin 663b3471b9 Volition sources -- warpcore CVS import 2002-06-03 03:26:03 +00:00