improved physics, added better caching
This commit is contained in:
0
public/input.h
Normal file
0
public/input.h
Normal file
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "tier0/lib.h"
|
||||
#include "stdint.h"
|
||||
#include "tier1/utlvector.h"
|
||||
|
||||
|
||||
typedef void Collider;
|
||||
@@ -22,4 +23,67 @@ typedef struct u128 {
|
||||
|
||||
extern funnyphysics *px;
|
||||
|
||||
class CPxCollider
|
||||
{
|
||||
public:
|
||||
virtual void Spawn( float fFriction = 0.5 ) = 0;
|
||||
virtual void Destroy( void );
|
||||
Collider *m_pCollider;
|
||||
};
|
||||
|
||||
class CPxBallMesh: public CPxCollider
|
||||
{
|
||||
public:
|
||||
virtual void Spawn( float fFriction = 0.5 ) override;
|
||||
virtual void Destroy( void ) override;
|
||||
float m_fRadius;
|
||||
};
|
||||
|
||||
class CPxBoxMesh: public CPxCollider
|
||||
{
|
||||
public:
|
||||
virtual void Spawn( float fFriction = 0.5 ) override;
|
||||
virtual void Destroy( void ) override;
|
||||
float m_fRadius[3];
|
||||
};
|
||||
|
||||
class CPxTriangleMesh: public CPxCollider
|
||||
{
|
||||
public:
|
||||
virtual void Spawn( float fFriction = 0.5 ) override;
|
||||
virtual void Destroy( void ) override;
|
||||
};
|
||||
|
||||
class CPxRigidBody
|
||||
{
|
||||
public:
|
||||
void Spawn( CPxCollider *pCollider, px_matrix matrix, px_rigidbody_params params );
|
||||
px_vec3 GetPosition( void );
|
||||
px_matrix GetMatrix ( void );
|
||||
void Destroy( void );
|
||||
CPxCollider *m_pCollider;
|
||||
RigidBodyHandle *m_pRigidBody;
|
||||
};
|
||||
|
||||
class CPxStaticBody
|
||||
{
|
||||
public:
|
||||
void Spawn( CPxCollider *pCollider, px_matrix matrix, px_rigidbody_params params );
|
||||
px_vec3 GetPosition( void );
|
||||
px_matrix GetMatrix ( void );
|
||||
void Destroy( void );
|
||||
CPxCollider *m_pCollider;
|
||||
};
|
||||
|
||||
class CPxFixedBody
|
||||
{
|
||||
public:
|
||||
void Spawn( CPxCollider *pCollider, px_matrix matrix, px_rigidbody_params params );
|
||||
px_vec3 GetPosition( void );
|
||||
px_matrix GetMatrix ( void );
|
||||
void Destroy( void );
|
||||
CPxCollider *m_pCollider;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
@@ -93,6 +93,7 @@ public:
|
||||
|
||||
virtual void SetVertexBuffer( IVertexBuffer *pBuffer ) = 0;
|
||||
virtual void SetIndexBuffer( IIndexBuffer *pBuffer ) = 0;
|
||||
virtual void SetMaterial( IMaterial *pMaterial ) = 0;
|
||||
virtual void Draw() = 0;
|
||||
};
|
||||
|
||||
@@ -121,4 +122,11 @@ public:
|
||||
static ITexture *LoadTexture( const char *szName );
|
||||
};
|
||||
|
||||
interface IPostProcessRenderer
|
||||
{
|
||||
public:
|
||||
static void Init();
|
||||
static void Frame( float fDelta );
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -48,7 +48,15 @@ struct vk_tripipeline_t
|
||||
|
||||
struct vk_comppipeline_t
|
||||
{
|
||||
|
||||
void Create(
|
||||
vk_shader_t &shader,
|
||||
CUtlVector<VkDescriptorSetLayoutBinding> &bindings,
|
||||
uint32_t pushConstantsSize
|
||||
);
|
||||
void Destroy();
|
||||
VkDescriptorSetLayout m_descriptorSetLayout;
|
||||
VkPipelineLayout m_layout;
|
||||
VkPipeline m_pipeline;
|
||||
};
|
||||
|
||||
struct vk_buffer_t
|
||||
|
||||
Reference in New Issue
Block a user