Misc display3d cleanups

master
per 2013-10-05 13:37:53 +02:00
parent 5ef1eff3ea
commit 36c835ad0e
3 changed files with 21 additions and 52 deletions

View File

@ -433,7 +433,7 @@ void bucketRenderCurrentList(void)
renderEffect((EFFECT*)thisTag->pObject);
break;
case RENDER_DROID:
renderDroid((DROID*)thisTag->pObject);
displayComponentObject((DROID*)thisTag->pObject);
break;
case RENDER_SHADOW:
renderShadow((DROID*)thisTag->pObject, getImdFromIndex(MI_SHADOW));

View File

@ -95,6 +95,11 @@
/******************** Prototypes ********************/
static void displayDelivPoints();
static void displayProximityMsgs();
static void displayDynamicObjects();
static void displayStaticObjects();
static void displayFeatures();
static UDWORD getTargettingGfx(void);
static void drawDroidGroupNumber(DROID *psDroid);
static void trackHeight(float desiredHeight);
@ -1464,7 +1469,7 @@ void renderAnimComponent( const COMPONENT_OBJECT *psObj )
}
/// Draw the buildings
void displayStaticObjects( void )
static void displayStaticObjects()
{
ANIM_OBJECT *psAnimObj;
@ -1712,7 +1717,7 @@ void displayBlueprints(void)
}
/// Draw Factory Delivery Points
void displayDelivPoints(void)
static void displayDelivPoints()
{
for (FLAG_POSITION *psDelivPoint = apsFlagPosLists[selectedPlayer]; psDelivPoint != NULL; psDelivPoint = psDelivPoint->psNext)
{
@ -1724,7 +1729,7 @@ void displayDelivPoints(void)
}
/// Draw the features
void displayFeatures( void )
static void displayFeatures()
{
// player can only be 0 for the features.
for (unsigned player = 0; player <= 1; ++player)
@ -1746,15 +1751,14 @@ void displayFeatures( void )
}
/// Draw the Proximity messages for the *SELECTED PLAYER ONLY*
void displayProximityMsgs( void )
static void displayProximityMsgs()
{
PROXIMITY_DISPLAY *psProxDisp;
VIEW_PROXIMITY *pViewProximity;
UDWORD x, y;
/* Go through all the proximity Displays*/
for (psProxDisp = apsProxDisp[selectedPlayer]; psProxDisp != NULL;
psProxDisp = psProxDisp->psNext)
for (psProxDisp = apsProxDisp[selectedPlayer]; psProxDisp != NULL; psProxDisp = psProxDisp->psNext)
{
if(!(psProxDisp->psMessage->read))
{
@ -1826,7 +1830,7 @@ static void displayAnimation( ANIM_OBJECT * psAnimObj, bool bHoldOnFirstFrame )
}
/// Draw the droids
void displayDynamicObjects( void )
static void displayDynamicObjects()
{
ANIM_OBJECT *psAnimObj;
@ -1854,7 +1858,7 @@ void displayDynamicObjects( void )
// In this case, AFAICT only DROID_CYBORG_SUPER had the issue. (Same issue as oil pump anim)
if (psDroid->droidType != DROID_CYBORG_SUPER)
{
renderDroid(psDroid);
displayComponentObject(psDroid);
}
else
{
@ -1897,21 +1901,12 @@ Vector2i getPlayerPos()
/// Set the player position
void setPlayerPos(SDWORD x, SDWORD y)
{
ASSERT( (x >= 0) && (x < world_coord(mapWidth)) &&
(y >= 0) && (y < world_coord(mapHeight)),
"setPlayerPos: position off map" );
ASSERT(x >= 0 && x < world_coord(mapWidth) && y >= 0 && y < world_coord(mapHeight), "Position off map");
player.p.x = x;
player.p.z = y;
player.r.z = 0;
}
/// Set the angle at which the player views the world
void setViewAngle(SDWORD angle)
{
player.r.x = DEG(360 + angle);
}
/// Get the distance at which the player views the world
float getViewDistance(void)
{
@ -1928,10 +1923,10 @@ void setViewDistance(float dist)
void renderFeature(FEATURE *psFeature)
{
SDWORD rotation;
PIELIGHT brightness;
PIELIGHT brightness = pal_SetBrightness(200);
Vector3i dv;
bool bForceDraw = ( getRevealStatus() && psFeature->psStats->visibleAtStart);
int shadowFlags = 0;
bool bForceDraw = (getRevealStatus() && psFeature->psStats->visibleAtStart);
int pieFlags = 0;
if (!psFeature->visible[selectedPlayer] && !bForceDraw)
{
@ -1941,7 +1936,7 @@ void renderFeature(FEATURE *psFeature)
/* Mark it as having been drawn */
psFeature->sDisplay.frameNumber = currentGameFrame;
/* Daft hack to get around the oild derrick issue */
/* Daft hack to get around the oil derrick issue */
if (!TileHasFeature(mapTile(map_coord(removeZ(psFeature->pos)))))
{
return;
@ -1964,18 +1959,12 @@ void renderFeature(FEATURE *psFeature)
pie_MatRotY(-rotation);
brightness = pal_SetBrightness(200); //? HUH?
if (psFeature->psStats->subType == FEAT_SKYSCRAPER)
{
objectShimmy((BASE_OBJECT*)psFeature);
}
if (bForceDraw)
{
brightness = pal_SetBrightness(200);
}
else if (!getRevealStatus())
if (!getRevealStatus())
{
brightness = pal_SetBrightness(avGetObjLightLevel((BASE_OBJECT*)psFeature, brightness.byte.r));
}
@ -1991,17 +1980,16 @@ void renderFeature(FEATURE *psFeature)
|| psFeature->psStats->subType == FEAT_OIL_DRUM)
{
/* these cast a shadow */
shadowFlags = pie_STATIC_SHADOW;
pieFlags = pie_STATIC_SHADOW;
}
pie_Draw3DShape(psFeature->sDisplay.imd, 0, 0, brightness, shadowFlags, 0);
pie_Draw3DShape(psFeature->sDisplay.imd, 0, 0, brightness, pieFlags, 0);
setScreenDisp(&psFeature->sDisplay);
pie_MatEnd();
}
///
void renderProximityMsg(PROXIMITY_DISPLAY *psProxDisp)
{
UDWORD msgX = 0, msgY = 0;
@ -2659,12 +2647,6 @@ void renderShadow( DROID *psDroid, iIMDShape *psShadowIMD )
pie_MatEnd();
}
/// Draw all pieces of a droid and register it as a target
void renderDroid( DROID *psDroid )
{
displayComponentObject(psDroid);
}
/// Draws the strobing 3D drag box that is used for multiple selection
static void drawDragBox( void )
{

View File

@ -53,13 +53,11 @@ extern bool showSAMPLES;
extern bool showORDERS;
extern bool showLevelName;
extern void setViewAngle(SDWORD angle);
extern float getViewDistance(void);
extern void setViewDistance(float dist);
extern bool radarOnScreen;
extern bool radarPermitted;
extern bool rangeOnScreen; // Added to get sensor/gun range on screen. -Q 5-10-05
extern void scaleMatrix( UDWORD percent );
extern void setViewPos( UDWORD x, UDWORD y, bool Pan);
Vector2i getPlayerPos();
extern void setPlayerPos(SDWORD x, SDWORD y);
@ -68,7 +66,6 @@ extern void disp3d_resetView(void);
extern void disp3d_getView(iView *newView);
extern void draw3DScene (void);
extern void renderDroid ( DROID *psDroid );
extern void renderStructure ( STRUCTURE *psStructure);
extern void renderFeature ( FEATURE *psFeature );
extern void renderProximityMsg ( PROXIMITY_DISPLAY *psProxDisp);
@ -77,11 +74,6 @@ extern void renderAnimComponent ( const COMPONENT_OBJECT *psObj );
extern void renderDeliveryPoint ( FLAG_POSITION *psPosition, bool blueprint );
extern void debugToggleSensorDisplay ( void );
extern void displayFeatures( void );
extern void displayStaticObjects( void );
extern void displayDynamicObjects( void );
extern void displayProximityMsgs( void );
extern void displayDelivPoints(void);
extern void calcScreenCoords(DROID *psDroid);
extern ENERGY_BAR toggleEnergyBars( void );
@ -92,15 +84,10 @@ extern void renderShadow( DROID *psDroid, iIMDShape *psShadowIMD );
extern bool clipXY ( SDWORD x, SDWORD y);
extern bool init3DView(void);
extern void initViewPosition(void);
extern iView player;
extern bool selectAttempt;
extern bool draggingTile;
extern iIMDShape *g_imd;
extern bool droidSelected;
extern SDWORD scrollSpeed;
//extern void assignSensorTarget( DROID *psDroid );
extern void assignSensorTarget( BASE_OBJECT *psObj );
extern void assignDestTarget( void );
extern UDWORD getWaterTileNum( void);