Browse Source

SimpleScene runs

Panagiotis Christopoulos Charitos 3 years ago
parent
commit
51e5f19482
41 changed files with 96 additions and 59 deletions
  1. 34 0
      AnKi.natvis
  2. 2 2
      AnKi/Core/GpuMemoryPools.cpp
  3. 3 3
      AnKi/Gr/Common.h
  4. 1 1
      AnKi/Gr/Vulkan/Common.cpp
  5. 2 1
      AnKi/Importer/GltfImporterMesh.cpp
  6. 6 4
      AnKi/Resource/MeshResource.cpp
  7. 8 8
      AnKi/Resource/ModelResource.cpp
  8. 2 1
      AnKi/Shaders/ForwardShadingCommon.glsl
  9. 1 1
      AnKi/Shaders/ForwardShadingGenericTransparent.ankiprog
  10. 2 2
      AnKi/Shaders/ForwardShadingParticles.ankiprog
  11. 7 6
      AnKi/Shaders/GBufferCommon.glsl
  12. 14 16
      AnKi/Shaders/Include/MeshTypes.h
  13. BIN
      EngineAssets/Plight.ankimesh
  14. BIN
      EngineAssets/Slight.ankimesh
  15. BIN
      Samples/SimpleScene/Assets/CornellBox.blend
  16. 1 1
      Samples/SimpleScene/Assets/Mesh_0_backWall_24a9b01d8fc47286.ankimdl
  17. BIN
      Samples/SimpleScene/Assets/Mesh_0_d56f58fc33de003f.ankimesh
  18. BIN
      Samples/SimpleScene/Assets/Mesh_0_lod0_d56f58fc33de003f.ankimesh
  19. BIN
      Samples/SimpleScene/Assets/Mesh_1_266a0dd9d2092f46.ankimesh
  20. 1 1
      Samples/SimpleScene/Assets/Mesh_1_ceiling_3aa8abc0da9fdec8.ankimdl
  21. BIN
      Samples/SimpleScene/Assets/Mesh_1_lod0_266a0dd9d2092f46.ankimesh
  22. BIN
      Samples/SimpleScene/Assets/Mesh_2_be53007bec464649.ankimesh
  23. 1 1
      Samples/SimpleScene/Assets/Mesh_2_floor_cc46c84f817f093a.ankimdl
  24. BIN
      Samples/SimpleScene/Assets/Mesh_2_lod0_be53007bec464649.ankimesh
  25. BIN
      Samples/SimpleScene/Assets/Mesh_3_c026fdb5b74773ed.ankimesh
  26. 1 1
      Samples/SimpleScene/Assets/Mesh_3_leftWall_acf66dd2ebcb73e6.ankimdl
  27. BIN
      Samples/SimpleScene/Assets/Mesh_3_lod0_c026fdb5b74773ed.ankimesh
  28. BIN
      Samples/SimpleScene/Assets/Mesh_4_4d4aae6c030c4fd5.ankimesh
  29. 1 1
      Samples/SimpleScene/Assets/Mesh_4_light_82ddb9b3263c8f6e.ankimdl
  30. BIN
      Samples/SimpleScene/Assets/Mesh_4_lod0_4d4aae6c030c4fd5.ankimesh
  31. BIN
      Samples/SimpleScene/Assets/Mesh_5_629309b27fa549a7.ankimesh
  32. BIN
      Samples/SimpleScene/Assets/Mesh_5_lod0_629309b27fa549a7.ankimesh
  33. 1 1
      Samples/SimpleScene/Assets/Mesh_5_rightWall_46f15190068c514a.ankimdl
  34. BIN
      Samples/SimpleScene/Assets/Mesh_6_a078cf217893be6f.ankimesh
  35. BIN
      Samples/SimpleScene/Assets/Mesh_6_lod0_a078cf217893be6f.ankimesh
  36. 1 1
      Samples/SimpleScene/Assets/Mesh_6_shortBox_6c09f7141caa6339.ankimdl
  37. BIN
      Samples/SimpleScene/Assets/Mesh_7_4b76b132380d8a62.ankimesh
  38. BIN
      Samples/SimpleScene/Assets/Mesh_7_lod0_4b76b132380d8a62.ankimesh
  39. 1 1
      Samples/SimpleScene/Assets/Mesh_7_tallBox_e327ec5ce1a1e7eb.ankimdl
  40. 5 5
      Samples/SimpleScene/Assets/Scene.lua
  41. 1 1
      Tests/Gr/Gr.cpp

+ 34 - 0
AnKi.natvis

@@ -45,4 +45,38 @@
 		</Expand>
 	</Type>
 
+	<Type Name="anki::Array&lt;*,*&gt;">
+		<DisplayString>{{ size={$T2} }}</DisplayString>
+		<Expand>
+			<ExpandedItem>m_data</ExpandedItem>
+		</Expand>
+	</Type>
+
+	<Type Name="anki::CString">
+		<DisplayString Condition="(bool)(m_ptr==0)">*Empty*</DisplayString>
+		<DisplayString>{m_ptr,s}</DisplayString>
+	</Type>
+
+	<Type Name="anki::String">
+		<DisplayString Condition="(bool)(m_data.m_data==0)">*Empty*</DisplayString>
+		<DisplayString>{m_data.m_data,s}</DisplayString>
+	</Type>
+
+	<Type Name="anki::BaseStringRaii&lt;*&gt;">
+		<DisplayString Condition="(bool)(m_data.m_data==0)">*Empty*</DisplayString>
+		<DisplayString>{m_data.m_data,s}</DisplayString>
+	</Type>
+
+	<Type Name="anki::TVec&lt;*,2&gt;">
+		<DisplayString>x={m_carr[0]} y={m_carr[1]}</DisplayString>
+	</Type>
+
+	<Type Name="anki::TVec&lt;*,3&gt;">
+		<DisplayString>x={m_carr[0]} y={m_carr[1]} z={m_carr[2]}</DisplayString>
+	</Type>
+
+	<Type Name="anki::TVec&lt;*,4&gt;">
+		<DisplayString>x={m_carr[0]} y={m_carr[1]} z={m_carr[2]} w={m_carr[3]}</DisplayString>
+	</Type>
+
 </AutoVisualizer>

+ 2 - 2
AnKi/Core/GpuMemoryPools.cpp

@@ -93,8 +93,8 @@ Error StagingGpuMemoryPool::init(GrManager* gr, const ConfigSet& cfg)
 	initBuffer(StagingGpuMemoryType::kStorage,
 			   max(gr->getDeviceCapabilities().m_storageBufferBindOffsetAlignment,
 				   gr->getDeviceCapabilities().m_sbtRecordAlignment),
-			   gr->getDeviceCapabilities().m_storageBufferMaxRange, BufferUsageBit::kAllStorage | BufferUsageBit::kSBT,
-			   *gr);
+			   gr->getDeviceCapabilities().m_storageBufferMaxRange,
+			   BufferUsageBit::kAllStorage | BufferUsageBit::kShaderBindingTable, *gr);
 
 	initBuffer(StagingGpuMemoryType::kVertex, 16, kMaxU32, BufferUsageBit::kVertex | BufferUsageBit::kIndex, *gr);
 

+ 3 - 3
AnKi/Gr/Common.h

@@ -677,7 +677,7 @@ enum class BufferUsageBit : U64
 	kTransferDestination = 1ull << 26ull,
 
 	kAccelerationStructureBuild = 1ull << 27ull, ///< Will be used as a position or index buffer in a BLAS build.
-	kSBT = 1ull << 28ull, ///< Will be used as SBT in a traceRays() command.
+	kShaderBindingTable = 1ull << 28ull, ///< Will be used as SBT in a traceRays() command.
 
 	// Derived
 	kAllUniform = kUniformGeometry | kUniformFragment | kUniformCompute | kUniformTraceRays,
@@ -696,13 +696,13 @@ enum class BufferUsageBit : U64
 	kAllCompute = kUniformCompute | kStorageComputeRead | kStorageComputeWrite | kTextureComputeRead
 				  | kTextureComputeWrite | kIndirectCompute,
 	kAllTraceRays = kUniformTraceRays | kStorageTraceRaysRead | kStorageTraceRaysWrite | kTextureTraceRaysRead
-					| kTextureTraceRaysWrite | kIndirectTraceRays | kSBT,
+					| kTextureTraceRaysWrite | kIndirectTraceRays | kShaderBindingTable,
 
 	kAllRayTracing = kAllTraceRays | kAccelerationStructureBuild,
 	kAllRead = kAllUniform | kStorageGeometryRead | kStorageFragmentRead | kStorageComputeRead | kStorageTraceRaysRead
 			   | kTextureGeometryRead | kTextureFragmentRead | kTextureComputeRead | kTextureTraceRaysRead | kIndex
 			   | kVertex | kIndirectCompute | kIndirectDraw | kIndirectTraceRays | kTransferSource
-			   | kAccelerationStructureBuild | kSBT,
+			   | kAccelerationStructureBuild | kShaderBindingTable,
 	kAllWrite = kStorageGeometryWrite | kStorageFragmentWrite | kStorageComputeWrite | kStorageTraceRaysWrite
 				| kTextureGeometryWrite | kTextureFragmentWrite | kTextureComputeWrite | kTextureTraceRaysWrite
 				| kTransferDestination,

+ 1 - 1
AnKi/Gr/Vulkan/Common.cpp

@@ -323,7 +323,7 @@ VkBufferUsageFlags convertBufferUsageBit(BufferUsageBit usageMask)
 		out |= VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR;
 	}
 
-	if(!!(usageMask & BufferUsageBit::kSBT))
+	if(!!(usageMask & BufferUsageBit::kShaderBindingTable))
 	{
 		out |= VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR;
 	}

+ 2 - 1
AnKi/Importer/GltfImporterMesh.cpp

@@ -651,9 +651,10 @@ Error GltfImporter::writeMesh(const cgltf_mesh& mesh)
 		header.m_flags |= MeshBinaryFlag::kConvex;
 	}
 	header.m_indexType = IndexType::kU16;
-	header.m_subMeshCount = submeshes.getSize();
+	header.m_subMeshCount = U32(submeshes[0].getSize());
 	header.m_aabbMin = aabbMin;
 	header.m_aabbMax = aabbMax;
+	header.m_lodCount = maxLod + 1;
 
 	writeVertexAttribAndBufferInfoToHeader(VertexStreamId::kPosition, header);
 	writeVertexAttribAndBufferInfoToHeader(VertexStreamId::kNormal, header);

+ 6 - 4
AnKi/Resource/MeshResource.cpp

@@ -127,7 +127,7 @@ Error MeshResource::load(const ResourceFilename& filename, Bool async)
 
 	// LODs
 	m_lods.create(getMemoryPool(), header.m_lodCount);
-	for(U32 l = header.m_lodCount - 1; l >= 0; --l)
+	for(I32 l = I32(header.m_lodCount - 1); l >= 0; --l)
 	{
 		Lod& lod = m_lods[l];
 
@@ -237,13 +237,15 @@ Error MeshResource::loadAsync(MeshBinaryLoader& loader) const
 	U32 handleCount = 0;
 
 	BufferPtr unifiedGeometryBuffer = getManager().getUnifiedGeometryMemoryPool().getVertexBuffer();
+	const BufferUsageBit unifiedGeometryBufferNonTransferUsage =
+		unifiedGeometryBuffer->getBufferUsage() ^ BufferUsageBit::kTransferDestination;
 
 	CommandBufferInitInfo cmdbinit;
 	cmdbinit.m_flags = CommandBufferFlag::kSmallBatch | CommandBufferFlag::kGeneralWork;
 	CommandBufferPtr cmdb = gr.newCommandBuffer(cmdbinit);
 
 	// Set transfer to transfer barrier because of the clear that happened while sync loading
-	const BufferBarrierInfo barrier = {unifiedGeometryBuffer.get(), BufferUsageBit::kVertex,
+	const BufferBarrierInfo barrier = {unifiedGeometryBuffer.get(), unifiedGeometryBufferNonTransferUsage,
 									   BufferUsageBit::kTransferDestination, 0, kMaxPtrSize};
 	cmdb->setPipelineBarrier({}, {&barrier, 1}, {});
 
@@ -302,7 +304,7 @@ Error MeshResource::loadAsync(MeshBinaryLoader& loader) const
 		bufferBarrier.m_offset = 0;
 		bufferBarrier.m_size = kMaxPtrSize;
 		bufferBarrier.m_previousUsage = BufferUsageBit::kTransferDestination;
-		bufferBarrier.m_nextUsage = BufferUsageBit::kAllRead;
+		bufferBarrier.m_nextUsage = unifiedGeometryBufferNonTransferUsage;
 
 		Array<AccelerationStructureBarrierInfo, kMaxLodCount> asBarriers;
 		for(U32 lodIdx = 0; lodIdx < m_lods.getSize(); ++lodIdx)
@@ -338,7 +340,7 @@ Error MeshResource::loadAsync(MeshBinaryLoader& loader) const
 		bufferBarrier.m_offset = 0;
 		bufferBarrier.m_size = kMaxPtrSize;
 		bufferBarrier.m_previousUsage = BufferUsageBit::kTransferDestination;
-		bufferBarrier.m_nextUsage = BufferUsageBit::kAllRead;
+		bufferBarrier.m_nextUsage = unifiedGeometryBufferNonTransferUsage;
 
 		cmdb->setPipelineBarrier({}, {&bufferBarrier, 1}, {});
 	}

+ 8 - 8
AnKi/Resource/ModelResource.cpp

@@ -157,14 +157,6 @@ Error ModelResource::load(const ResourceFilename& filename, Bool async)
 	ANKI_CHECK(modelPatchesEl.getChildElement("modelPatch", modelPatchEl));
 	do
 	{
-		U32 subMeshIndex;
-		Bool subMeshIndexPresent;
-		ANKI_CHECK(modelPatchEl.getAttributeNumberOptional("subMeshIndex", subMeshIndex, subMeshIndexPresent));
-		if(!subMeshIndexPresent)
-		{
-			subMeshIndex = kMaxU32;
-		}
-
 		XmlElement materialEl;
 		ANKI_CHECK(modelPatchEl.getChildElement("material", materialEl));
 
@@ -173,6 +165,14 @@ Error ModelResource::load(const ResourceFilename& filename, Bool async)
 		CString meshFname;
 		ANKI_CHECK(meshEl.getText(meshFname));
 
+		U32 subMeshIndex;
+		Bool subMeshIndexPresent;
+		ANKI_CHECK(meshEl.getAttributeNumberOptional("subMeshIndex", subMeshIndex, subMeshIndexPresent));
+		if(!subMeshIndexPresent)
+		{
+			subMeshIndex = kMaxU32;
+		}
+
 		CString cstr;
 		ANKI_CHECK(materialEl.getText(cstr));
 

+ 2 - 1
AnKi/Shaders/ForwardShadingCommon.glsl

@@ -8,6 +8,7 @@
 #include <AnKi/Shaders/Common.glsl>
 #include <AnKi/Shaders/Functions.glsl>
 #include <AnKi/Shaders/Include/ModelTypes.h>
+#include <AnKi/Shaders/Include/MeshTypes.h>
 #include <AnKi/Shaders/Include/MaterialTypes.h>
 #include <AnKi/Shaders/Include/GpuSceneTypes.h>
 
@@ -17,7 +18,7 @@ ANKI_BINDLESS_SET(kMaterialSetBindless)
 // Vert
 //
 #if defined(ANKI_VERTEX_SHADER)
-layout(location = kVertexAttributeIdPosition) in Vec3 in_position;
+layout(location = kVertexStreamIdPosition) in Vec3 in_position;
 #endif
 
 //

+ 1 - 1
AnKi/Shaders/ForwardShadingGenericTransparent.ankiprog

@@ -40,7 +40,7 @@ layout(set = kMaterialSetGlobal, binding = kMaterialBindingGlobalUniforms) unifo
 
 #pragma anki start vert
 
-layout(location = kVertexAttributeIdUv0) in Vec2 in_uv;
+layout(location = kVertexStreamIdUv) in Vec2 in_uv;
 
 layout(location = 0) out Vec2 out_uv;
 layout(location = 1) out Vec3 out_worldPosition;

+ 2 - 2
AnKi/Shaders/ForwardShadingParticles.ankiprog

@@ -36,8 +36,8 @@ layout(set = kMaterialSetLocal, binding = kMaterialBindingRenderableGpuView) uni
 
 #pragma anki start vert
 
-layout(location = kVertexAttributeIdScale) in F32 in_scale;
-layout(location = kVertexAttributeIdAlpha) in F32 in_alpha;
+layout(location = kVertexStreamIdParticleScale) in F32 in_scale;
+layout(location = kVertexStreamIdParticleAlpha) in F32 in_alpha;
 
 layout(location = 0) flat out ANKI_RP F32 out_alpha;
 layout(location = 1) out Vec2 out_uv;

+ 7 - 6
AnKi/Shaders/GBufferCommon.glsl

@@ -11,6 +11,7 @@
 #include <AnKi/Shaders/Include/ModelTypes.h>
 #include <AnKi/Shaders/Include/MaterialTypes.h>
 #include <AnKi/Shaders/Include/GpuSceneTypes.h>
+#include <AnKi/Shaders/Include/MeshTypes.h>
 #include <AnKi/Shaders/Common.glsl>
 
 ANKI_BINDLESS_SET(kMaterialSetBindless)
@@ -30,20 +31,20 @@ ANKI_BINDLESS_SET(kMaterialSetBindless)
 //
 #if defined(ANKI_VERTEX_SHADER)
 
-layout(location = kVertexAttributeIdPosition) in Vec3 in_position;
+layout(location = kVertexStreamIdPosition) in Vec3 in_position;
 
 #	if ANKI_TECHNIQUE == RENDERING_TECHNIQUE_GBUFFER
-layout(location = kVertexAttributeIdNormal) in ANKI_RP Vec3 in_normal;
-layout(location = kVertexAttributeIdTangent) in ANKI_RP Vec4 in_tangent;
+layout(location = kVertexStreamIdNormal) in ANKI_RP Vec3 in_normal;
+layout(location = kVertexStreamIdTangent) in ANKI_RP Vec4 in_tangent;
 #	endif
 
 #	if ANKI_TECHNIQUE == RENDERING_TECHNIQUE_GBUFFER || ALPHA_TEST
-layout(location = kVertexAttributeIdUv0) in Vec2 in_uv;
+layout(location = kVertexStreamIdUv) in Vec2 in_uv;
 #	endif
 
 #	if ANKI_BONES
-layout(location = kVertexAttributeIdBoneWeights) in Vec4 in_boneWeights;
-layout(location = kVertexAttributeIdBoneIndices) in UVec4 in_boneIndices;
+layout(location = kVertexStreamIdBoneIds) in Vec4 in_boneWeights;
+layout(location = kVertexStreamIdBoneWeights) in UVec4 in_boneIndices;
 #	endif
 
 #endif // defined(ANKI_VERTEX_SHADER)

+ 14 - 16
AnKi/Shaders/Include/MeshTypes.h

@@ -54,28 +54,26 @@ enum class VertexStreamMask : U8
 ANKI_ENUM_ALLOW_NUMERIC_OPERATIONS(VertexStreamMask)
 
 inline constexpr Array<Format, U32(VertexStreamId::kMeshRelatedCount)> kMeshRelatedVertexStreamFormats = {
-	Format::kR32G32B32A32_Sfloat, Format::kR8G8B8A8_Snorm, Format::kR8G8B8A8_Snorm,
-	Format::kR32G32_Sfloat,       Format::kR8G8B8A8_Uint,  Format::kR8G8B8A8_Snorm};
+	Format::kR32G32B32_Sfloat, Format::kR8G8B8A8_Snorm, Format::kR8G8B8A8_Snorm,
+	Format::kR32G32_Sfloat,    Format::kR8G8B8A8_Uint,  Format::kR8G8B8A8_Snorm};
 
 #else
 
 // For regular geometry
-const U32 kVertexStreamPosition = 0u;
-const U32 kVertexStreamNormal = 1u;
-const U32 kVertexStreamTangent = 2u;
-const U32 kVertexStreamUv = 3u;
-const U32 kVertexStreamBoneIds = 4u;
-const U32 kVertexStreamBoneWeights = 5u;
-
-const U32 kVertexStreamRegularCount = 6u;
+const U32 kVertexStreamIdPosition = 0u;
+const U32 kVertexStreamIdNormal = 1u;
+const U32 kVertexStreamIdTangent = 2u;
+const U32 kVertexStreamIdUv = 3u;
+const U32 kVertexStreamIdBoneIds = 4u;
+const U32 kVertexStreamIdBoneWeights = 5u;
 
 // For particles
-const U32 kVertexStreamParticlePosition = 0u;
-const U32 kVertexStreamParticleScale = 1u;
-const U32 kVertexStreamParticleAlpha = 2u;
-const U32 kVertexStreamParticleLife = 3u;
-const U32 kVertexStreamParticleStartingLife = 4u;
-const U32 kVertexStreamParticlePreviousPosition = 5u;
+const U32 kVertexStreamIdParticlePosition = 0u;
+const U32 kVertexStreamIdParticleScale = 1u;
+const U32 kVertexStreamIdParticleAlpha = 2u;
+const U32 kVertexStreamIdParticleLife = 3u;
+const U32 kVertexStreamIdParticleStartingLife = 4u;
+const U32 kVertexStreamIdParticlePreviousPosition = 5u;
 #endif
 
 ANKI_END_NAMESPACE

BIN
EngineAssets/Plight.ankimesh


BIN
EngineAssets/Slight.ankimesh


BIN
Samples/SimpleScene/Assets/CornellBox.blend


+ 1 - 1
Samples/SimpleScene/Assets/Mesh_0_backWall_24a9b01d8fc47286.ankimdl

@@ -1,7 +1,7 @@
 <model>
 	<modelPatches>
 		<modelPatch>
-			<mesh>Assets/Mesh_0_lod0_d56f58fc33de003f.ankimesh</mesh>
+			<mesh>Assets/Mesh_0_d56f58fc33de003f.ankimesh</mesh>
 			<material>Assets/backWall_361f28d87a6738d3.ankimtl</material>
 		</modelPatch>
 	</modelPatches>

BIN
Samples/SimpleScene/Assets/Mesh_0_d56f58fc33de003f.ankimesh


BIN
Samples/SimpleScene/Assets/Mesh_0_lod0_d56f58fc33de003f.ankimesh


BIN
Samples/SimpleScene/Assets/Mesh_1_266a0dd9d2092f46.ankimesh


+ 1 - 1
Samples/SimpleScene/Assets/Mesh_1_ceiling_3aa8abc0da9fdec8.ankimdl

@@ -1,7 +1,7 @@
 <model>
 	<modelPatches>
 		<modelPatch>
-			<mesh>Assets/Mesh_1_lod0_266a0dd9d2092f46.ankimesh</mesh>
+			<mesh>Assets/Mesh_1_266a0dd9d2092f46.ankimesh</mesh>
 			<material>Assets/ceiling_3fd94cde277a48e1.ankimtl</material>
 		</modelPatch>
 	</modelPatches>

BIN
Samples/SimpleScene/Assets/Mesh_1_lod0_266a0dd9d2092f46.ankimesh


BIN
Samples/SimpleScene/Assets/Mesh_2_be53007bec464649.ankimesh


+ 1 - 1
Samples/SimpleScene/Assets/Mesh_2_floor_cc46c84f817f093a.ankimdl

@@ -1,7 +1,7 @@
 <model>
 	<modelPatches>
 		<modelPatch>
-			<mesh>Assets/Mesh_2_lod0_be53007bec464649.ankimesh</mesh>
+			<mesh>Assets/Mesh_2_be53007bec464649.ankimesh</mesh>
 			<material>Assets/floor_71cbd2644e53ab8c.ankimtl</material>
 		</modelPatch>
 	</modelPatches>

BIN
Samples/SimpleScene/Assets/Mesh_2_lod0_be53007bec464649.ankimesh


BIN
Samples/SimpleScene/Assets/Mesh_3_c026fdb5b74773ed.ankimesh


+ 1 - 1
Samples/SimpleScene/Assets/Mesh_3_leftWall_acf66dd2ebcb73e6.ankimdl

@@ -1,7 +1,7 @@
 <model>
 	<modelPatches>
 		<modelPatch>
-			<mesh>Assets/Mesh_3_lod0_c026fdb5b74773ed.ankimesh</mesh>
+			<mesh>Assets/Mesh_3_c026fdb5b74773ed.ankimesh</mesh>
 			<material>Assets/leftWall_fe97b196ed148fca.ankimtl</material>
 		</modelPatch>
 	</modelPatches>

BIN
Samples/SimpleScene/Assets/Mesh_3_lod0_c026fdb5b74773ed.ankimesh


BIN
Samples/SimpleScene/Assets/Mesh_4_4d4aae6c030c4fd5.ankimesh


+ 1 - 1
Samples/SimpleScene/Assets/Mesh_4_light_82ddb9b3263c8f6e.ankimdl

@@ -1,7 +1,7 @@
 <model>
 	<modelPatches>
 		<modelPatch>
-			<mesh>Assets/Mesh_4_lod0_4d4aae6c030c4fd5.ankimesh</mesh>
+			<mesh>Assets/Mesh_4_4d4aae6c030c4fd5.ankimesh</mesh>
 			<material>Assets/light_1544a10dffc35038.ankimtl</material>
 		</modelPatch>
 	</modelPatches>

BIN
Samples/SimpleScene/Assets/Mesh_4_lod0_4d4aae6c030c4fd5.ankimesh


BIN
Samples/SimpleScene/Assets/Mesh_5_629309b27fa549a7.ankimesh


BIN
Samples/SimpleScene/Assets/Mesh_5_lod0_629309b27fa549a7.ankimesh


+ 1 - 1
Samples/SimpleScene/Assets/Mesh_5_rightWall_46f15190068c514a.ankimdl

@@ -1,7 +1,7 @@
 <model>
 	<modelPatches>
 		<modelPatch>
-			<mesh>Assets/Mesh_5_lod0_629309b27fa549a7.ankimesh</mesh>
+			<mesh>Assets/Mesh_5_629309b27fa549a7.ankimesh</mesh>
 			<material>Assets/rightWall_d627c19b8205864.ankimtl</material>
 		</modelPatch>
 	</modelPatches>

BIN
Samples/SimpleScene/Assets/Mesh_6_a078cf217893be6f.ankimesh


BIN
Samples/SimpleScene/Assets/Mesh_6_lod0_a078cf217893be6f.ankimesh


+ 1 - 1
Samples/SimpleScene/Assets/Mesh_6_shortBox_6c09f7141caa6339.ankimdl

@@ -1,7 +1,7 @@
 <model>
 	<modelPatches>
 		<modelPatch>
-			<mesh>Assets/Mesh_6_lod0_a078cf217893be6f.ankimesh</mesh>
+			<mesh>Assets/Mesh_6_a078cf217893be6f.ankimesh</mesh>
 			<material>Assets/shortBox_122467965d493dab.ankimtl</material>
 		</modelPatch>
 	</modelPatches>

BIN
Samples/SimpleScene/Assets/Mesh_7_4b76b132380d8a62.ankimesh


BIN
Samples/SimpleScene/Assets/Mesh_7_lod0_4b76b132380d8a62.ankimesh


+ 1 - 1
Samples/SimpleScene/Assets/Mesh_7_tallBox_e327ec5ce1a1e7eb.ankimdl

@@ -1,7 +1,7 @@
 <model>
 	<modelPatches>
 		<modelPatch>
-			<mesh>Assets/Mesh_7_lod0_4b76b132380d8a62.ankimesh</mesh>
+			<mesh>Assets/Mesh_7_4b76b132380d8a62.ankimesh</mesh>
 			<material>Assets/tallBox_15316a0c94bdf7f6.ankimtl</material>
 		</modelPatch>
 	</modelPatches>

+ 5 - 5
Samples/SimpleScene/Assets/Scene.lua

@@ -1,4 +1,4 @@
--- Generated by: /home/godlike/src/anki/buildd/Bin/GltfImporter CornellBox.gltf . -rpath Assets -texrpath Assets
+-- Generated by: C:\Users\godli\src\anki\out\build\x64-Debug\Bin\GltfImporter.exe CornellBox.gltf .. -rpath Assets -texrpath Assets -v
 local scene = getSceneGraph()
 local events = getEventManager()
 
@@ -82,7 +82,7 @@ trf:setRotation(rot)
 trf:setScale(5.000000)
 node:getSceneNodeBase():getMoveComponent():setLocalTransform(trf)
 
-node = scene:newPerspectiveCameraNode("Camera_Orientation")
+node = scene:newPerspectiveCameraNode("Camera")
 scene:setActiveCameraNode(node:getSceneNodeBase())
 frustumc = node:getSceneNodeBase():getFrustumComponent()
 frustumc:setPerspective(0.100000, 500.000000, getMainRenderer():getAspectRatio() * 1.024779, 1.024779)
@@ -91,12 +91,12 @@ frustumc:setEffectiveShadowDistance(100.000000)
 trf = Transform.new()
 trf:setOrigin(Vec4.new(0.217066, 6.668793, 17.325689, 0))
 rot = Mat3x4.new()
-rot:setAll(0.999854, -0.000334, 0.017085, 0.000000, -0.001690, 0.992972, 0.118340, 0.000000, -0.017005, -0.118352, 0.992826, 0.000000)
+rot:setAll(0.999854, -0.000334, 0.017085, 0.000000, -0.001690, 0.992972, 0.118341, 0.000000, -0.017005, -0.118352, 0.992826, 0.000000)
 trf:setRotation(rot)
 trf:setScale(1.000000)
 node:getSceneNodeBase():getMoveComponent():setLocalTransform(trf)
 
-node = scene:newPointLightNode("Point_Orientation")
+node = scene:newPointLightNode("Point")
 lcomp = node:getSceneNodeBase():getLightComponent()
 lcomp:setDiffuseColor(Vec4.new(10.000000, 10.000000, 10.000000, 1))
 lcomp:setShadowEnabled(1)
@@ -104,7 +104,7 @@ lcomp:setRadius(20.000000)
 trf = Transform.new()
 trf:setOrigin(Vec4.new(0.000000, 8.913514, 0.000000, 0))
 rot = Mat3x4.new()
-rot:setAll(1.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, -1.000000, 0.000000, 0.000000)
+rot:setAll(1.000000, 0.000000, 0.000000, 0.000000, 0.000000, -0.000000, 1.000000, 0.000000, 0.000000, -1.000000, -0.000000, 0.000000)
 trf:setRotation(rot)
 trf:setScale(1.000000)
 node:getSceneNodeBase():getMoveComponent():setLocalTransform(trf)

+ 1 - 1
Tests/Gr/Gr.cpp

@@ -3405,7 +3405,7 @@ void main()
 
 		BufferInitInfo inf;
 		inf.m_mapAccess = BufferMapAccessBit::kWrite;
-		inf.m_usage = BufferUsageBit::kSBT;
+		inf.m_usage = BufferUsageBit::kShaderBindingTable;
 		inf.m_size = sbtRecordSize * recordCount;
 
 		sbt = g_gr->newBuffer(inf);