summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/modelinfo/VehicleModelInfo.cpp4
-rw-r--r--src/render/Particle.cpp45
-rw-r--r--vendor/milessdk/include/mss.h151
-rw-r--r--vendor/milessdk/lib/mss32.libbin15570 -> 15570 bytes
4 files changed, 110 insertions, 90 deletions
diff --git a/src/modelinfo/VehicleModelInfo.cpp b/src/modelinfo/VehicleModelInfo.cpp
index c8a19df1..4caacc7f 100644
--- a/src/modelinfo/VehicleModelInfo.cpp
+++ b/src/modelinfo/VehicleModelInfo.cpp
@@ -1108,6 +1108,7 @@ CVehicleModelInfo::SetEnvironmentMapCB(RpAtomic *atomic, void *data)
void
CVehicleModelInfo::SetEnvironmentMap(void)
{
+/*
CSimpleModelInfo *wheelmi;
int32 i;
@@ -1125,6 +1126,7 @@ CVehicleModelInfo::SetEnvironmentMap(void)
for(i = 0; i < wheelmi->m_numAtomics; i++)
SetEnvironmentMapCB(wheelmi->m_atomics[i], nil);
}
+*/
#ifdef EXTENDED_PIPELINES
CustomPipes::AttachVehiclePipe(m_clump);
@@ -1150,10 +1152,12 @@ CVehicleModelInfo::LoadEnvironmentMaps(void)
void
CVehicleModelInfo::ShutdownEnvironmentMaps(void)
{
+/*
RwTextureDestroy(gpWhiteTexture);
gpWhiteTexture = nil;
RwFrameDestroy(pMatFxIdentityFrame);
pMatFxIdentityFrame = nil;
+*/
}
int
diff --git a/src/render/Particle.cpp b/src/render/Particle.cpp
index ff74bc67..d6ee36a1 100644
--- a/src/render/Particle.cpp
+++ b/src/render/Particle.cpp
@@ -531,7 +531,7 @@ void CParticle::Initialise()
break;
case PARTICLE_WHEEL_DIRT:
- entry->m_ppRaster = &gpRubberRaster[4];
+ entry->m_ppRaster = &gpSmoke2Raster;
break;
case PARTICLE_SAND:
@@ -597,16 +597,16 @@ void CParticle::Initialise()
case PARTICLE_CIGARETTE_SMOKE:
entry->m_ppRaster = &gpGunSmokeRaster;
break;
-
+
+ case PARTICLE_TEARGAS:
+ entry->m_ppRaster = &gpHeatHazeRaster;
+ break;
+
case PARTICLE_SMOKE:
case PARTICLE_SMOKE_SLOWMOTION:
case PARTICLE_DRY_ICE:
entry->m_ppRaster = gpSmokeRaster;
break;
-
- case PARTICLE_TEARGAS:
- entry->m_ppRaster = &gpHeatHazeRaster;
- break;
case PARTICLE_GARAGEPAINT_SPRAY:
entry->m_ppRaster = gpSmokeRaster;
@@ -663,6 +663,10 @@ void CParticle::Initialise()
case PARTICLE_WATERSPRAY:
entry->m_ppRaster = gpWatersprayRaster;
break;
+
+ case PARTICLE_RAINDROP_2D:
+ entry->m_ppRaster = &gpRainDropRaster;
+ break;
case PARTICLE_EXPLOSION_MEDIUM:
entry->m_ppRaster = gpExplosionMediumRaster;
@@ -725,7 +729,7 @@ void CParticle::Initialise()
break;
case PARTICLE_ENGINE_SMOKE:
- entry->m_ppRaster = &gpSmokeRaster[4];
+ entry->m_ppRaster = &gpCloudRaster4;
break;
case PARTICLE_ENGINE_SMOKE2:
@@ -734,7 +738,7 @@ void CParticle::Initialise()
break;
case PARTICLE_CARFLAME_SMOKE:
- entry->m_ppRaster= &gpCloudRaster4;
+ entry->m_ppRaster = &gpCloudRaster4;
break;
case PARTICLE_FIREBALL_SMOKE:
@@ -780,7 +784,7 @@ void CParticle::Initialise()
break;
case PARTICLE_GUNSHELL:
- entry->m_ppRaster= &gpGunShellRaster;
+ entry->m_ppRaster = &gpGunShellRaster;
break;
case PARTICLE_GUNSHELL_BUMP1:
@@ -792,7 +796,7 @@ void CParticle::Initialise()
break;
case PARTICLE_TEST:
- entry->m_ppRaster = &gpSmokeRaster[4];
+ entry->m_ppRaster = &gpCloudRaster4;
break;
case PARTICLE_BIRD_FRONT:
@@ -800,23 +804,19 @@ void CParticle::Initialise()
break;
case PARTICLE_SHIP_SIDE:
- entry->m_ppRaster= gpBoatRaster;
+ entry->m_ppRaster = gpBoatRaster;
break;
case PARTICLE_BEASTIE:
entry->m_ppRaster = &gpBeastieRaster;
break;
- case PARTICLE_RAINDROP_2D:
- entry->m_ppRaster= &gpRainDropRaster;
- break;
-
case PARTICLE_FERRY_CHIM_SMOKE:
- entry->m_ppRaster= gpSmokeRaster;
+ entry->m_ppRaster = gpSmokeRaster;
break;
case PARTICLE_MULTIPLAYER_HIT:
- entry->m_ppRaster= &gpMultiPlayerHitRaster;
+ entry->m_ppRaster = &gpMultiPlayerHitRaster;
break;
}
}
@@ -904,9 +904,14 @@ void CParticle::Shutdown()
{
RwTextureDestroy(gpRainDripTex[i]);
gpRainDripTex[i] = nil;
-
- RwTextureDestroy(gpRainDripDarkTex[i]); // hmm, i think gpRainDripDarkTex[1(one)] can crash, let's wait for report hehe
- gpRainDripDarkTex[i] = nil;
+
+#ifdef FIX_BUGS
+ if (gpRainDripDarkTex[i])
+#endif
+ {
+ RwTextureDestroy(gpRainDripDarkTex[i]);
+ gpRainDripDarkTex[i] = nil;
+ }
}
RwTextureDestroy(gpBoatWakeTex);
diff --git a/vendor/milessdk/include/mss.h b/vendor/milessdk/include/mss.h
index 424fc6e4..b5b20bea 100644
--- a/vendor/milessdk/include/mss.h
+++ b/vendor/milessdk/include/mss.h
@@ -56,75 +56,86 @@ typedef struct _AILSOUNDINFO
void const *initial_ptr;
} AILSOUNDINFO;
-#define DLLEXPORT extern "C" __declspec(dllexport)
-
-DLLEXPORT S32 WINAPI AIL_enumerate_3D_providers(HPROENUM *next, HPROVIDER *dest, C8 **name);
-DLLEXPORT void WINAPI AIL_release_3D_sample_handle(H3DSAMPLE S);
-DLLEXPORT void WINAPI AIL_close_3D_provider(HPROVIDER lib);
-DLLEXPORT void WINAPI AIL_set_3D_provider_preference(HPROVIDER lib, C8 const *name, void const *val);
-DLLEXPORT M3DRESULT WINAPI AIL_open_3D_provider(HPROVIDER lib);
-DLLEXPORT C8 *WINAPI AIL_last_error(void);
-DLLEXPORT S32 WINAPI AIL_3D_room_type(HPROVIDER lib);
-DLLEXPORT void WINAPI AIL_set_3D_room_type(HPROVIDER lib, S32 room_type);
-DLLEXPORT void WINAPI AIL_3D_provider_attribute(HPROVIDER lib, C8 const *name, void *val);
-DLLEXPORT H3DSAMPLE WINAPI AIL_allocate_3D_sample_handle(HPROVIDER lib);
-DLLEXPORT void WINAPI AIL_set_3D_sample_effects_level(H3DSAMPLE S, F32 effects_level);
-DLLEXPORT void WINAPI AIL_set_3D_speaker_type(HPROVIDER lib, S32 speaker_type);
-DLLEXPORT HSTREAM WINAPI AIL_open_stream(HDIGDRIVER dig, C8 const *filename, S32 stream_mem);
-DLLEXPORT void WINAPI AIL_stream_ms_position(HSTREAM S, S32 *total_milliseconds, S32 *current_milliseconds);
-DLLEXPORT void WINAPI AIL_close_stream(HSTREAM stream);
-DLLEXPORT S32 WINAPI AIL_digital_handle_release(HDIGDRIVER drvr);
-DLLEXPORT S32 WINAPI AIL_digital_handle_reacquire(HDIGDRIVER drvr);
-DLLEXPORT C8 *WINAPI AIL_set_redist_directory(C8 const *dir);
-DLLEXPORT S32 WINAPI AIL_startup(void);
-DLLEXPORT S32 WINAPI AIL_set_preference(U32 number, S32 value);
-DLLEXPORT HDIGDRIVER WINAPI AIL_open_digital_driver(U32 frequency, S32 bits, S32 channel, U32 flags);
-DLLEXPORT void *WINAPI AIL_mem_alloc_lock(U32 size);
-DLLEXPORT HSAMPLE WINAPI AIL_allocate_sample_handle(HDIGDRIVER dig);
-DLLEXPORT void WINAPI AIL_init_sample(HSAMPLE S);
-DLLEXPORT void WINAPI AIL_set_sample_type(HSAMPLE S, S32 format, U32 flags);
-DLLEXPORT void WINAPI AIL_pause_stream(HSTREAM stream, S32 onoff);
-DLLEXPORT void WINAPI AIL_release_sample_handle(HSAMPLE S);
-DLLEXPORT void WINAPI AIL_mem_free_lock(void *ptr);
-DLLEXPORT void WINAPI AIL_close_digital_driver(HDIGDRIVER dig);
-DLLEXPORT void WINAPI AIL_shutdown(void);
-DLLEXPORT void WINAPI AIL_set_3D_sample_volume(H3DSAMPLE S, S32 volume);
-DLLEXPORT void WINAPI AIL_set_sample_volume(HSAMPLE S, S32 volume);
-DLLEXPORT void WINAPI AIL_set_sample_address(HSAMPLE S, void const *start, U32 len);
-DLLEXPORT S32 WINAPI AIL_set_3D_sample_info(H3DSAMPLE S, AILSOUNDINFO const *info);
-DLLEXPORT void WINAPI AIL_set_3D_position(H3DPOBJECT obj, F32 X, F32 Y, F32 Z);
-DLLEXPORT void WINAPI AIL_set_3D_sample_distances(H3DSAMPLE S, F32 max_dist, F32 min_dist);
-DLLEXPORT void WINAPI AIL_set_sample_pan(HSAMPLE S, S32 pan);
-DLLEXPORT void WINAPI AIL_set_sample_playback_rate(HSAMPLE S, S32 playback_rate);
-DLLEXPORT void WINAPI AIL_set_3D_sample_playback_rate(H3DSAMPLE S, S32 playback_rate);
-DLLEXPORT void WINAPI AIL_set_sample_loop_block(HSAMPLE S, S32 loop_start_offset, S32 loop_end_offset);
-DLLEXPORT void WINAPI AIL_set_3D_sample_loop_block(H3DSAMPLE S, S32 loop_start_offset, S32 loop_end_offset);
-DLLEXPORT void WINAPI AIL_set_sample_loop_count(HSAMPLE S, S32 loop_count);
-DLLEXPORT void WINAPI AIL_set_3D_sample_loop_count(H3DSAMPLE S, S32 loops);
-DLLEXPORT U32 WINAPI AIL_sample_status(HSAMPLE S);
-DLLEXPORT U32 WINAPI AIL_3D_sample_status(H3DSAMPLE S);
-DLLEXPORT void WINAPI AIL_start_sample(HSAMPLE S);
-DLLEXPORT void WINAPI AIL_start_3D_sample(H3DSAMPLE S);
-DLLEXPORT void WINAPI AIL_end_sample(HSAMPLE S);
-DLLEXPORT void WINAPI AIL_end_3D_sample(H3DSAMPLE S);
-DLLEXPORT void WINAPI AIL_set_stream_loop_count(HSTREAM stream, S32 count);
-DLLEXPORT S32 WINAPI AIL_service_stream(HSTREAM stream, S32 fillup);
-DLLEXPORT void WINAPI AIL_start_stream(HSTREAM stream);
-DLLEXPORT void WINAPI AIL_set_stream_ms_position(HSTREAM S, S32 milliseconds);
-DLLEXPORT void WINAPI AIL_set_stream_volume(HSTREAM stream, S32 volume);
-DLLEXPORT void WINAPI AIL_set_stream_pan(HSTREAM stream, S32 pan);
-DLLEXPORT S32 WINAPI AIL_stream_status(HSTREAM stream);
-
-typedef U32(WINAPI* AIL_file_open_callback)(char const * Filename, U32 * FileHandle);
-
-typedef void (WINAPI* AIL_file_close_callback) (U32 FileHandle);
-
-#define AIL_FILE_SEEK_BEGIN 0
-#define AIL_FILE_SEEK_CURRENT 1
-#define AIL_FILE_SEEK_END 2
-
-typedef S32(WINAPI* AIL_file_seek_callback) (U32 FileHandle, S32 Offset, U32 Type);
+typedef U32 (WINAPI *AIL_file_open_callback)(char const * Filename, U32 * FileHandle);
-typedef U32(WINAPI* AIL_file_read_callback) (U32 FileHandle, void* Buffer, U32 Bytes);
+typedef void (WINAPI *AIL_file_close_callback)(U32 FileHandle);
-DLLEXPORT void WINAPI AIL_set_file_callbacks(AIL_file_open_callback opencb, AIL_file_close_callback closecb, AIL_file_seek_callback seekcb, AIL_file_read_callback readcb);
+#define AIL_FILE_SEEK_BEGIN 0
+#define AIL_FILE_SEEK_CURRENT 1
+#define AIL_FILE_SEEK_END 2
+
+typedef S32(WINAPI *AIL_file_seek_callback)(U32 FileHandle, S32 Offset, U32 Type);
+
+typedef U32(WINAPI *AIL_file_read_callback)(U32 FileHandle, void* Buffer, U32 Bytes);
+
+#ifdef RE3MSS_EXPORTS
+#define RE3MSS_EXPORT __declspec(dllexport)
+#else
+#define RE3MSS_EXPORT __declspec(dllimport)
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+RE3MSS_EXPORT S32 WINAPI AIL_enumerate_3D_providers(HPROENUM *next, HPROVIDER *dest, C8 **name);
+RE3MSS_EXPORT void WINAPI AIL_release_3D_sample_handle(H3DSAMPLE S);
+RE3MSS_EXPORT void WINAPI AIL_close_3D_provider(HPROVIDER lib);
+RE3MSS_EXPORT void WINAPI AIL_set_3D_provider_preference(HPROVIDER lib, C8 const *name, void const *val);
+RE3MSS_EXPORT M3DRESULT WINAPI AIL_open_3D_provider(HPROVIDER lib);
+RE3MSS_EXPORT C8 *WINAPI AIL_last_error(void);
+RE3MSS_EXPORT S32 WINAPI AIL_3D_room_type(HPROVIDER lib);
+RE3MSS_EXPORT void WINAPI AIL_set_3D_room_type(HPROVIDER lib, S32 room_type);
+RE3MSS_EXPORT void WINAPI AIL_3D_provider_attribute(HPROVIDER lib, C8 const *name, void *val);
+RE3MSS_EXPORT H3DSAMPLE WINAPI AIL_allocate_3D_sample_handle(HPROVIDER lib);
+RE3MSS_EXPORT void WINAPI AIL_set_3D_sample_effects_level(H3DSAMPLE S, F32 effects_level);
+RE3MSS_EXPORT void WINAPI AIL_set_3D_speaker_type(HPROVIDER lib, S32 speaker_type);
+RE3MSS_EXPORT HSTREAM WINAPI AIL_open_stream(HDIGDRIVER dig, C8 const *filename, S32 stream_mem);
+RE3MSS_EXPORT void WINAPI AIL_stream_ms_position(HSTREAM S, S32 *total_milliseconds, S32 *current_milliseconds);
+RE3MSS_EXPORT void WINAPI AIL_close_stream(HSTREAM stream);
+RE3MSS_EXPORT S32 WINAPI AIL_digital_handle_release(HDIGDRIVER drvr);
+RE3MSS_EXPORT S32 WINAPI AIL_digital_handle_reacquire(HDIGDRIVER drvr);
+RE3MSS_EXPORT C8 *WINAPI AIL_set_redist_directory(C8 const *dir);
+RE3MSS_EXPORT S32 WINAPI AIL_startup(void);
+RE3MSS_EXPORT S32 WINAPI AIL_set_preference(U32 number, S32 value);
+RE3MSS_EXPORT HDIGDRIVER WINAPI AIL_open_digital_driver(U32 frequency, S32 bits, S32 channel, U32 flags);
+RE3MSS_EXPORT void *WINAPI AIL_mem_alloc_lock(U32 size);
+RE3MSS_EXPORT HSAMPLE WINAPI AIL_allocate_sample_handle(HDIGDRIVER dig);
+RE3MSS_EXPORT void WINAPI AIL_init_sample(HSAMPLE S);
+RE3MSS_EXPORT void WINAPI AIL_set_sample_type(HSAMPLE S, S32 format, U32 flags);
+RE3MSS_EXPORT void WINAPI AIL_pause_stream(HSTREAM stream, S32 onoff);
+RE3MSS_EXPORT void WINAPI AIL_release_sample_handle(HSAMPLE S);
+RE3MSS_EXPORT void WINAPI AIL_mem_free_lock(void *ptr);
+RE3MSS_EXPORT void WINAPI AIL_close_digital_driver(HDIGDRIVER dig);
+RE3MSS_EXPORT void WINAPI AIL_shutdown(void);
+RE3MSS_EXPORT void WINAPI AIL_set_3D_sample_volume(H3DSAMPLE S, S32 volume);
+RE3MSS_EXPORT void WINAPI AIL_set_sample_volume(HSAMPLE S, S32 volume);
+RE3MSS_EXPORT void WINAPI AIL_set_sample_address(HSAMPLE S, void const *start, U32 len);
+RE3MSS_EXPORT S32 WINAPI AIL_set_3D_sample_info(H3DSAMPLE S, AILSOUNDINFO const *info);
+RE3MSS_EXPORT void WINAPI AIL_set_3D_position(H3DPOBJECT obj, F32 X, F32 Y, F32 Z);
+RE3MSS_EXPORT void WINAPI AIL_set_3D_sample_distances(H3DSAMPLE S, F32 max_dist, F32 min_dist);
+RE3MSS_EXPORT void WINAPI AIL_set_sample_pan(HSAMPLE S, S32 pan);
+RE3MSS_EXPORT void WINAPI AIL_set_sample_playback_rate(HSAMPLE S, S32 playback_rate);
+RE3MSS_EXPORT void WINAPI AIL_set_3D_sample_playback_rate(H3DSAMPLE S, S32 playback_rate);
+RE3MSS_EXPORT void WINAPI AIL_set_sample_loop_block(HSAMPLE S, S32 loop_start_offset, S32 loop_end_offset);
+RE3MSS_EXPORT void WINAPI AIL_set_3D_sample_loop_block(H3DSAMPLE S, S32 loop_start_offset, S32 loop_end_offset);
+RE3MSS_EXPORT void WINAPI AIL_set_sample_loop_count(HSAMPLE S, S32 loop_count);
+RE3MSS_EXPORT void WINAPI AIL_set_3D_sample_loop_count(H3DSAMPLE S, S32 loops);
+RE3MSS_EXPORT U32 WINAPI AIL_sample_status(HSAMPLE S);
+RE3MSS_EXPORT U32 WINAPI AIL_3D_sample_status(H3DSAMPLE S);
+RE3MSS_EXPORT void WINAPI AIL_start_sample(HSAMPLE S);
+RE3MSS_EXPORT void WINAPI AIL_start_3D_sample(H3DSAMPLE S);
+RE3MSS_EXPORT void WINAPI AIL_end_sample(HSAMPLE S);
+RE3MSS_EXPORT void WINAPI AIL_end_3D_sample(H3DSAMPLE S);
+RE3MSS_EXPORT void WINAPI AIL_set_stream_loop_count(HSTREAM stream, S32 count);
+RE3MSS_EXPORT S32 WINAPI AIL_service_stream(HSTREAM stream, S32 fillup);
+RE3MSS_EXPORT void WINAPI AIL_start_stream(HSTREAM stream);
+RE3MSS_EXPORT void WINAPI AIL_set_stream_ms_position(HSTREAM S, S32 milliseconds);
+RE3MSS_EXPORT void WINAPI AIL_set_stream_volume(HSTREAM stream, S32 volume);
+RE3MSS_EXPORT void WINAPI AIL_set_stream_pan(HSTREAM stream, S32 pan);
+RE3MSS_EXPORT S32 WINAPI AIL_stream_status(HSTREAM stream);
+RE3MSS_EXPORT void WINAPI AIL_set_file_callbacks(AIL_file_open_callback opencb, AIL_file_close_callback closecb, AIL_file_seek_callback seekcb, AIL_file_read_callback readcb);
+
+#ifdef __cplusplus
+}
+#endif
diff --git a/vendor/milessdk/lib/mss32.lib b/vendor/milessdk/lib/mss32.lib
index 49cea2d2..e63a1a05 100644
--- a/vendor/milessdk/lib/mss32.lib
+++ b/vendor/milessdk/lib/mss32.lib
Binary files differ