summaryrefslogtreecommitdiff
path: root/indra/newview/gltfscenemanager.h
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/gltfscenemanager.h')
-rw-r--r--indra/newview/gltfscenemanager.h19
1 files changed, 10 insertions, 9 deletions
diff --git a/indra/newview/gltfscenemanager.h b/indra/newview/gltfscenemanager.h
index 53b4ff0e4e..fcde6cf1f7 100644
--- a/indra/newview/gltfscenemanager.h
+++ b/indra/newview/gltfscenemanager.h
@@ -28,19 +28,13 @@
#include "llsingleton.h"
#include "llviewerobject.h"
+#include "gltf/common.h"
+
class LLVOVolume;
class LLDrawable;
namespace LL
{
- namespace GLTF
- {
- class Asset;
- }
-}
-
-namespace LL
-{
class GLTFSceneManager : public LLSimpleton<GLTFSceneManager>
{
public:
@@ -56,6 +50,11 @@ namespace LL
void update();
void render(bool opaque, bool rigged = false);
+ void render(LL::GLTF::Asset& asset, bool opaque, bool rigged);
+
+ // bind the given material for rendering
+ void bind(LL::GLTF::Asset& asset, LL::GLTF::Material& material);
+
void renderOpaque();
void renderAlpha();
@@ -71,7 +70,7 @@ namespace LL
LLVector4a* normal, // return the surface normal at the intersection point
LLVector4a* tangent); // return the surface tangent at the intersection point
- bool lineSegmentIntersect(LLVOVolume* obj, GLTF::Asset* asset, const LLVector4a& start, const LLVector4a& end, S32 face, bool pick_transparent, bool pick_rigged, bool pick_unselectable, S32* face_hitp, S32* primitive_hitp,
+ bool lineSegmentIntersect(LLVOVolume* obj, LL::GLTF::Asset* asset, const LLVector4a& start, const LLVector4a& end, S32 face, bool pick_transparent, bool pick_rigged, bool pick_unselectable, S32* face_hitp, S32* primitive_hitp,
LLVector4a* intersection, LLVector2* tex_coord, LLVector4a* normal, LLVector4a* tangent);
void renderDebug();
@@ -88,6 +87,8 @@ namespace LL
U32 mPendingImageUploads = 0;
U32 mPendingBinaryUploads = 0;
U32 mPendingGLTFUploads = 0;
+
+ U32 mJointUBO = 0;
};
}