Counter Strike : Global Offensive Source Code
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//===== Copyright � 1996-2005, Valve Corporation, All rights reserved. ======//
//
// Purpose:
//
// $NoKeywords: $
//
//===========================================================================//
#ifndef IMESHSYSTEM_H
#define IMESHSYSTEM_H
#ifdef _WIN32
#pragma once
#endif
#include "appframework/IAppSystem.h"
#include "rendersystem/schema/renderbuffer.g.h"
#include "rendersystem/schema/renderable.g.h"
#include "rendersystem/irendercontext.h"
#include "mathlib/camera.h"
//-----------------------------------------------------------------------------
// Methods related to rendering meshes
//-----------------------------------------------------------------------------
abstract_class IMeshSystem : public IAppSystem { public: virtual HRenderable FindOrCreateFileRenderable( const char *pFileName, RenderSystemAssetFileLoadMode_t nLoadMode = LOADMODE_ASYNCHRONOUS ) = 0; virtual void DrawRenderable( IRenderContext *pRenderContext, HRenderable hRenderable, RenderShaderHandle_t hVS, RenderShaderHandle_t hPS, int nExplicitInstanceCount = 0 ) = 0; virtual const Renderable_t *GetRenderableData( HRenderable hRenderable ) = 0; virtual const PermRenderableBounds_t *GetPermRenderableData( HRenderable hRenderable ) = 0; virtual bool RenderableIntersectsFrustum( HRenderable hRenderable, CFrustum *pFrustum, Vector &vOrigin ) = 0; virtual bool IsFullyCached( HRenderable hRenderable ) = 0; virtual void CacheRenderable( HRenderable hRenderable ) = 0; };
#endif // IMESHSYSTEM_H
|