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.