-- [ Picked text/plain from multipart/alternative ] Thats what it says on his Steam ID, yeah, poor man.
On Jan 24, 2008 11:49 PM, Mark Chandler <[EMAIL PROTECTED]> wrote: > You have been at work for 10 hours now. :O > > Must be have you chained to your desk or something. > > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Mike Durand > Sent: Friday, January 25, 2008 1:05 PM > To: [email protected] > Subject: [hlcoders] Workarounds for SDK Source > > Hi All- > > Due to the fact that public Steam has an earlier version of the Orange Box > engine binaries than the Steam instance I tested against you will need to > make these modifications in order for your mod to run. My apologies for > the > screw-up and I'll update the SDK with these and some other fixes tomorrow. > > Many thanks to Omega for his help in diagnosing and fixing this! > > ==Step 1== > Change the existing implementation of bool > CParticleMgr::EarlyRetireParticleSystems in particlemgr.cpp to this: > > bool CParticleMgr::EarlyRetireParticleSystems( int nCount, > CNewParticleEffect **ppEffects ) > { > return false; > } > > ==Step 2== > Replace the existing implementation of IVRenderView in ivrenderview.h with > this one: > > class IVRenderView > { > public: > > // Draw normal brush model. > // If pMaterialOverride is non-null, then all the faces of the > bmodel will > // set this material rather than their regular material. > virtual void DrawBrushModel( > IClientEntity *baseentity, > model_t *model, > const Vector& origin, > const QAngle& angles, > bool sort ) = 0; > > // Draw brush model that has no origin/angles change ( uses > identity > transform ) > // FIXME, Material proxy IClientEntity *baseentity is unused right > now, use DrawBrushModel for brushes with > // proxies for now. > virtual void DrawIdentityBrushModel( > IWorldRenderList *pList, model_t *model ) = 0; > > // Mark this dynamic light as having changed this frame ( so light > maps affected will be recomputed ) > virtual void TouchLight( struct dlight_t *light > ) > = 0; > // Draw 3D Overlays > virtual void Draw3DDebugOverlays( void ) = 0; > // Sets global blending fraction > virtual void SetBlend( float blend ) = 0; > virtual float GetBlend( void ) = 0; > > // Sets global color modulation > virtual void SetColorModulation( float const* > blend ) = 0; > virtual void GetColorModulation( float* blend ) > = > 0; > > // Wrap entire scene drawing > virtual void SceneBegin( void ) = 0; > virtual void SceneEnd( void ) = 0; > > // Gets the fog volume for a particular point > virtual void GetVisibleFogVolume( const Vector& > eyePoint, VisibleFogVolumeInfo_t *pInfo ) = 0; > > // Wraps world drawing > // If iForceViewLeaf is not -1, then it uses the specified leaf as > your starting area for setting up area portal culling. > // This is used by water since your reflected view origin is often > in solid space, but we still want to treat it as though > // the first portal we're looking out of is a water portal, so our > view effectively originates under the water. > virtual IWorldRenderList * CreateWorldList() = 0; > > virtual void BuildWorldLists( IWorldRenderList > *pList, WorldListInfo_t* pInfo, int iForceFViewLeaf, const > VisOverrideData_t* pVisData = NULL, bool bShadowDepth = false, float > *pReflectionWaterHeight = NULL ) = 0; > virtual void DrawWorldLists( IWorldRenderList > *pList, unsigned long flags, float waterZAdjust ) = 0; > > // Optimization for top view > virtual void DrawTopView( bool enable ) = 0; > virtual void TopViewBounds( Vector2D const& > mins, > Vector2D const& maxs ) = 0; > > // Draw lights > virtual void DrawLights( void ) = 0; > // FIXME: This function is a stub, doesn't do anything in the > engine right now > virtual void DrawMaskEntities( void ) = 0; > > // Draw surfaces with alpha > virtual void DrawTranslucentSurfaces( > IWorldRenderList *pList, int sortIndex, unsigned long flags, bool > bShadowDepth ) = 0; > > // Draw Particles ( just draws the linefine for debugging map leaks > ) > virtual void DrawLineFile( void ) = 0; > // Draw lightmaps > virtual void DrawLightmaps( IWorldRenderList > *pList, int pageId ) = 0; > // Wraps view render sequence, sets up a view > virtual void ViewSetupVis( bool novis, int > numorigins, const Vector origin[] ) = 0; > > // Return true if any of these leaves are visible in the current > PVS. > virtual bool AreAnyLeavesVisible( int *leafList, > int nLeaves ) = 0; > > virtual void VguiPaint( void ) = 0; > // Sets up view fade parameters > virtual void ViewDrawFade( byte *color, > IMaterial > *pMaterial ) = 0; > // Sets up the projection matrix for the specified field of view > virtual void SetProjectionMatrix( float fov, > float zNear, float zFar ) = 0; > // Determine lighting at specified position > virtual colorVec GetLightAtPoint( Vector& pos ) = 0; > // Whose eyes are we looking through? > virtual int GetViewEntity( void ) = 0; > // Get engine field of view setting > virtual float GetFieldOfView( void ) = 0; > // 1 == ducking, 0 == not > virtual unsigned char **GetAreaBits( void ) = 0; > > // Set up fog for a particular leaf > virtual void SetFogVolumeState( int > nVisibleFogVolume, bool bUseHeightFog ) = 0; > > // Installs a brush surface draw override method, null means use > normal renderer > virtual void InstallBrushSurfaceRenderer( > IBrushRenderer* pBrushRenderer ) = 0; > > // Draw brush model shadow > virtual void DrawBrushModelShadow( > IClientRenderable *pRenderable ) = 0; > > // Does the leaf contain translucent surfaces? > virtual bool LeafContainsTranslucentSurfaces( > IWorldRenderList *pList, int sortIndex, unsigned long flags ) = 0; > > virtual bool DoesBoxIntersectWaterVolume( const > Vector &mins, const Vector &maxs, int leafWaterDataID ) = 0; > > virtual void SetAreaState( > unsigned char chAreaBits[MAX_AREA_STATE_BYTES], > unsigned char > chAreaPortalBits[MAX_AREA_PORTAL_STATE_BYTES] ) = 0; > > // See i > virtual void VGui_Paint( int mode ) = 0; > > // Push, pop views (see PushViewFlags_t above for flags) > virtual void Push3DView( const CViewSetup &view, > int nFlags, ITexture* pRenderTarget, Frustum frustumPlanes ) = 0; > virtual void Push2DView( const CViewSetup &view, > int nFlags, ITexture* pRenderTarget, Frustum frustumPlanes ) = 0; > virtual void PopView( Frustum frustumPlanes ) = > 0; > > // Sets the main view > virtual void SetMainView( const Vector > &vecOrigin, const QAngle &angles ) = 0; > > enum > { > VIEW_SETUP_VIS_EX_RETURN_FLAGS_USES_RADIAL_VIS = > 0x00000001 > }; > > // Wraps view render sequence, sets up a view > virtual void ViewSetupVisEx( bool novis, int > numorigins, const Vector origin[], unsigned int &returnFlags ) = 0; > > //replaces the current view frustum with a rhyming replacement of > your choice > virtual void OverrideViewFrustum( Frustum custom > ) = 0; > > virtual void DrawBrushModelShadowDepth( > IClientEntity *baseentity, model_t *model, const Vector& origin, const > QAngle& angles, bool bSort ) = 0; > virtual void UpdateBrushModelLightmap( model_t > *model, IClientRenderable *pRenderable ) = 0; > virtual void BeginUpdateLightmaps( void ) = 0; > virtual void EndUpdateLightmaps( void ) = 0; > > virtual void SetOffCenterProjectionMatrix( float > fov, float zNear, float zFar, float flAspectRatio, > > float flBottom, float flTop, float flLeft, float flRight ) = 0; > virtual void SetProjectionMatrixOrtho( float > left, float top, float right, float bottom, float zNear, float zFar ) = 0; > > virtual void Push3DView( const CViewSetup &view, > int nFlags, ITexture* pRenderTarget, Frustum frustumPlanes, ITexture* > pDepthTexture ) = 0; > }; > > _______________________________________________ > To unsubscribe, edit your list preferences, or view the list archives, > please visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders > > _______________________________________________ > To unsubscribe, edit your list preferences, or view the list archives, > please visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders > > -- Gear Dev -- _______________________________________________ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders

