APEX Framework: UserRenderResource.h Source File

NVIDIA APEX

UserRenderResource.h
Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2008-2017, NVIDIA CORPORATION.  All rights reserved.
00003  *
00004  * NVIDIA CORPORATION and its licensors retain all intellectual property
00005  * and proprietary rights in and to this software, related documentation
00006  * and any modifications thereto.  Any use, reproduction, disclosure or
00007  * distribution of this software and related documentation without an express
00008  * license agreement from NVIDIA CORPORATION is strictly prohibited.
00009  */
00010 
00011 
00012 #ifndef USER_RENDER_RESOURCE_H
00013 #define USER_RENDER_RESOURCE_H
00014 
00020 #include "ApexUsingNamespace.h"
00021 
00022 namespace nvidia
00023 {
00024 namespace apex
00025 {
00026 
00027 class UserRenderVertexBuffer;
00028 class UserRenderIndexBuffer;
00029 class UserRenderBoneBuffer;
00030 class UserRenderInstanceBuffer;
00031 class UserRenderSpriteBuffer;
00032 
00033 
00034 PX_PUSH_PACK_DEFAULT
00035 
00039 class UserRenderResource
00040 {
00041 public:
00042     virtual ~UserRenderResource() {}
00043 
00045     virtual void setVertexBufferRange(uint32_t firstVertex, uint32_t numVerts) = 0;
00047     virtual void setIndexBufferRange(uint32_t firstIndex, uint32_t numIndices) = 0;
00049     virtual void setBoneBufferRange(uint32_t firstBone, uint32_t numBones) = 0;
00051     virtual void setInstanceBufferRange(uint32_t firstInstance, uint32_t numInstances) = 0;
00053     virtual void setSpriteBufferRange(uint32_t firstSprite, uint32_t numSprites) = 0;
00055     virtual void setSpriteVisibleCount(uint32_t visibleCount) { PX_UNUSED(visibleCount); }
00057     virtual void setMaterial(void* material) = 0;
00058 
00060     virtual uint32_t getNbVertexBuffers() const = 0;
00062     virtual UserRenderVertexBuffer* getVertexBuffer(uint32_t index) const = 0;
00064     virtual UserRenderIndexBuffer* getIndexBuffer() const = 0;
00066     virtual UserRenderBoneBuffer* getBoneBuffer() const = 0;
00068     virtual UserRenderInstanceBuffer* getInstanceBuffer() const = 0;
00070     virtual UserRenderSpriteBuffer* getSpriteBuffer() const = 0;
00071 };
00072 
00073 PX_POP_PACK
00074 
00075 }
00076 } // end namespace nvidia::apex
00077 
00078 #endif

Generated on Fri Dec 15 2017 13:58:35
Copyright © 2012-2017 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved.