Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4184)

Unified Diff: chrome/browser/android/vr_shell/gltf_asset.cc

Issue 2775283004: Rendering Daydream controller in a fixed position. (Closed)
Patch Set: Using textures for corresponding button states. Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/android/vr_shell/gltf_asset.cc
diff --git a/chrome/browser/android/vr_shell/gltf_asset.cc b/chrome/browser/android/vr_shell/gltf_asset.cc
index f4ee1fc2668ad26b60fab343d0596b90ff5e03ca..0711505279ae75988c1cc13fb7d3a0e999d3d23c 100644
--- a/chrome/browser/android/vr_shell/gltf_asset.cc
+++ b/chrome/browser/android/vr_shell/gltf_asset.cc
@@ -12,11 +12,26 @@ namespace vr_shell {
namespace gltf {
+namespace {
+
const std::unordered_map<std::string, Type> kTypeMap = {
{"SCALAR", SCALAR}, {"VEC2", VEC2}, {"VEC3", VEC3}, {"VEC4", VEC4},
{"MAT2", MAT2}, {"MAT3", MAT3}, {"MAT4", MAT4},
};
+const std::vector<int> kTypeComponents = {
+ 0,
+ 1, // SCALAR
+ 2, // VEC2
+ 3, // VEC3
+ 4, // VEC4
+ 4, // MAT2
+ 9, // MAT3
+ 16, // MAT4
+};
+
+} // namespace
+
Type GetType(const std::string& type) {
auto it = kTypeMap.find(type);
if (it == kTypeMap.end())
@@ -24,6 +39,10 @@ Type GetType(const std::string& type) {
return it->second;
}
+GLint GetTypeComponents(Type type) {
+ return kTypeComponents[type];
+}
+
Mesh::Primitive::Primitive() : indices(nullptr), mode(4) {}
Mesh::Primitive::~Primitive() = default;
@@ -104,6 +123,10 @@ const Scene* Asset::GetScene(std::size_t id) const {
return id < scenes_.size() ? scenes_[id].get() : nullptr;
}
+void Asset::FreeBuffers() {
+ buffers_.clear();
+}
+
} // namespace gltf
} // namespace vr_shell

Powered by Google App Engine
This is Rietveld 408576698