Skip to content

Commit 8c40da8

Browse files
committed
second MD5 mesh passes
1 parent 14a2ec5 commit 8c40da8

File tree

9 files changed

+287
-195
lines changed

9 files changed

+287
-195
lines changed

assimp.iml

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<module external.linked.project.id="assimp" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" external.system.module.group="com.github.kotlin-graphics" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
3+
<component name="FacetManager">
4+
<facet type="kotlin-language" name="Kotlin">
5+
<configuration version="3" platform="JVM 1.6" useProjectSettings="false">
6+
<compilerSettings />
7+
<compilerArguments>
8+
<option name="destination" value="$MODULE_DIR$/build/classes/kotlin/main" />
9+
<option name="noStdlib" value="true" />
10+
<option name="noReflect" value="true" />
11+
<option name="moduleName" value="assimp" />
12+
<option name="addCompilerBuiltIns" value="true" />
13+
<option name="loadBuiltInsFromDependencies" value="true" />
14+
<option name="languageVersion" value="1.2" />
15+
<option name="apiVersion" value="1.2" />
16+
<option name="pluginOptions">
17+
<array />
18+
</option>
19+
<option name="pluginClasspaths">
20+
<array />
21+
</option>
22+
</compilerArguments>
23+
</configuration>
24+
</facet>
25+
</component>
26+
<component name="NewModuleRootManager">
27+
<output url="file://$MODULE_DIR$/out/production/classes" />
28+
<output-test url="file://$MODULE_DIR$/out/test/classes" />
29+
<exclude-output />
30+
<content url="file://$MODULE_DIR$">
31+
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
32+
<sourceFolder url="file://$MODULE_DIR$/src/main/kotlin" isTestSource="false" />
33+
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
34+
<sourceFolder url="file://$MODULE_DIR$/src/test/kotlin" isTestSource="true" />
35+
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
36+
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
37+
<excludeFolder url="file://$MODULE_DIR$/.gradle" />
38+
<excludeFolder url="file://$MODULE_DIR$/build" />
39+
<excludeFolder url="file://$MODULE_DIR$/out" />
40+
</content>
41+
<orderEntry type="inheritedJdk" />
42+
<orderEntry type="sourceFolder" forTests="false" />
43+
<orderEntry type="library" scope="PROVIDED" name="Gradle: com.github.kotlin-graphics:uno-sdk:ef16f55a380962cf14dc5c01ff37575ea0713262" level="project" />
44+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.jetbrains.kotlin:kotlin-reflect:1.2.0" level="project" />
45+
<orderEntry type="library" scope="PROVIDED" name="Gradle: io.github.microutils:kotlin-logging:1.4.6" level="project" />
46+
<orderEntry type="library" scope="PROVIDED" name="Gradle: com.github.kotlin-graphics:gln:7cfb411b7dd75b478fefcfaf789a539478c215bd" level="project" />
47+
<orderEntry type="library" scope="PROVIDED" name="Gradle: com.github.kotlin-graphics:gli:98721f90c7463bcadb450b2e07e66e7eabbce41b" level="project" />
48+
<orderEntry type="library" scope="PROVIDED" name="Gradle: com.github.kotlin-graphics:glm:70b4eb23b05153de66137bb3dba0446eb77654f0" level="project" />
49+
<orderEntry type="library" scope="PROVIDED" name="Gradle: com.github.kotlin-graphics:kotlin-unsigned:545b8f2fcb" level="project" />
50+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.2.0" level="project" />
51+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl-glfw:3.1.4-SNAPSHOT" level="project" />
52+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl-glfw:3.1.4-SNAPSHOT:natives-linux" level="project" />
53+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl-jemalloc:3.1.4-SNAPSHOT" level="project" />
54+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl-jemalloc:3.1.4-SNAPSHOT:natives-linux" level="project" />
55+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl-openal:3.1.4-SNAPSHOT" level="project" />
56+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl-openal:3.1.4-SNAPSHOT:natives-linux" level="project" />
57+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl-opengl:3.1.4-SNAPSHOT" level="project" />
58+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl-opengl:3.1.4-SNAPSHOT:natives-linux" level="project" />
59+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl-stb:3.1.4-SNAPSHOT" level="project" />
60+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl-stb:3.1.4-SNAPSHOT:natives-linux" level="project" />
61+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl:3.1.4-SNAPSHOT" level="project" />
62+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.lwjgl:lwjgl:3.1.4-SNAPSHOT:natives-linux" level="project" />
63+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.jetbrains:annotations:13.0" level="project" />
64+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.jogamp.gluegen:gluegen-rt:2.3.2" level="project" />
65+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.jogamp.jogl:jogl-all:2.3.2" level="project" />
66+
<orderEntry type="library" scope="PROVIDED" name="Gradle: org.slf4j:slf4j-api:1.7.21" level="project" />
67+
<orderEntry type="library" scope="RUNTIME" name="Gradle: com.github.kotlin-graphics:uno-sdk:ef16f55a380962cf14dc5c01ff37575ea0713262" level="project" />
68+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.jetbrains.kotlin:kotlin-reflect:1.2.0" level="project" />
69+
<orderEntry type="library" scope="RUNTIME" name="Gradle: io.github.microutils:kotlin-logging:1.4.6" level="project" />
70+
<orderEntry type="library" scope="RUNTIME" name="Gradle: com.github.kotlin-graphics:gln:7cfb411b7dd75b478fefcfaf789a539478c215bd" level="project" />
71+
<orderEntry type="library" scope="RUNTIME" name="Gradle: com.github.kotlin-graphics:gli:98721f90c7463bcadb450b2e07e66e7eabbce41b" level="project" />
72+
<orderEntry type="library" scope="RUNTIME" name="Gradle: com.github.kotlin-graphics:glm:70b4eb23b05153de66137bb3dba0446eb77654f0" level="project" />
73+
<orderEntry type="library" scope="RUNTIME" name="Gradle: com.github.kotlin-graphics:kotlin-unsigned:545b8f2fcb" level="project" />
74+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.2.0" level="project" />
75+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-glfw:3.1.4-SNAPSHOT" level="project" />
76+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-glfw:3.1.4-SNAPSHOT:natives-windows" level="project" />
77+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-glfw:3.1.4-SNAPSHOT:natives-linux" level="project" />
78+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-jemalloc:3.1.4-SNAPSHOT" level="project" />
79+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-jemalloc:3.1.4-SNAPSHOT:natives-windows" level="project" />
80+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-jemalloc:3.1.4-SNAPSHOT:natives-linux" level="project" />
81+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-openal:3.1.4-SNAPSHOT" level="project" />
82+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-openal:3.1.4-SNAPSHOT:natives-windows" level="project" />
83+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-openal:3.1.4-SNAPSHOT:natives-linux" level="project" />
84+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-opengl:3.1.4-SNAPSHOT" level="project" />
85+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-opengl:3.1.4-SNAPSHOT:natives-windows" level="project" />
86+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-opengl:3.1.4-SNAPSHOT:natives-linux" level="project" />
87+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-stb:3.1.4-SNAPSHOT" level="project" />
88+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-stb:3.1.4-SNAPSHOT:natives-windows" level="project" />
89+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl-stb:3.1.4-SNAPSHOT:natives-linux" level="project" />
90+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl:3.1.4-SNAPSHOT" level="project" />
91+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl:3.1.4-SNAPSHOT:natives-windows" level="project" />
92+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.lwjgl:lwjgl:3.1.4-SNAPSHOT:natives-linux" level="project" />
93+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.jetbrains:annotations:13.0" level="project" />
94+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.jogamp.gluegen:gluegen-rt:2.3.2" level="project" />
95+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.jogamp.jogl:jogl-all:2.3.2" level="project" />
96+
<orderEntry type="library" scope="RUNTIME" name="Gradle: org.slf4j:slf4j-api:1.7.21" level="project" />
97+
<orderEntry type="library" scope="TEST" name="Gradle: com.github.kotlin-graphics:uno-sdk:ef16f55a380962cf14dc5c01ff37575ea0713262" level="project" />
98+
<orderEntry type="library" scope="TEST" name="Gradle: io.github.microutils:kotlin-logging:1.4.6" level="project" />
99+
<orderEntry type="library" scope="TEST" name="Gradle: io.kotlintest:kotlintest:2.0.7" level="project" />
100+
<orderEntry type="library" scope="TEST" name="Gradle: com.github.kotlin-graphics:gln:7cfb411b7dd75b478fefcfaf789a539478c215bd" level="project" />
101+
<orderEntry type="library" scope="TEST" name="Gradle: com.github.kotlin-graphics:gli:98721f90c7463bcadb450b2e07e66e7eabbce41b" level="project" />
102+
<orderEntry type="library" scope="TEST" name="Gradle: com.github.kotlin-graphics:glm:70b4eb23b05153de66137bb3dba0446eb77654f0" level="project" />
103+
<orderEntry type="library" scope="TEST" name="Gradle: com.github.kotlin-graphics:kotlin-unsigned:545b8f2fcb" level="project" />
104+
<orderEntry type="library" scope="TEST" name="Gradle: org.jetbrains.kotlin:kotlin-reflect:1.2.0" level="project" />
105+
<orderEntry type="library" scope="TEST" name="Gradle: org.jetbrains.kotlin:kotlin-stdlib:1.2.0" level="project" />
106+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-glfw:3.1.4-SNAPSHOT" level="project" />
107+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-glfw:3.1.4-SNAPSHOT:natives-linux" level="project" />
108+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-jemalloc:3.1.4-SNAPSHOT" level="project" />
109+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-jemalloc:3.1.4-SNAPSHOT:natives-linux" level="project" />
110+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-openal:3.1.4-SNAPSHOT" level="project" />
111+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-openal:3.1.4-SNAPSHOT:natives-linux" level="project" />
112+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-opengl:3.1.4-SNAPSHOT" level="project" />
113+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-opengl:3.1.4-SNAPSHOT:natives-linux" level="project" />
114+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-stb:3.1.4-SNAPSHOT" level="project" />
115+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-stb:3.1.4-SNAPSHOT:natives-linux" level="project" />
116+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl:3.1.4-SNAPSHOT" level="project" />
117+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl:3.1.4-SNAPSHOT:natives-linux" level="project" />
118+
<orderEntry type="library" scope="TEST" name="Gradle: org.jetbrains:annotations:13.0" level="project" />
119+
<orderEntry type="library" scope="TEST" name="Gradle: org.jogamp.gluegen:gluegen-rt:2.3.2" level="project" />
120+
<orderEntry type="library" scope="TEST" name="Gradle: org.jogamp.jogl:jogl-all:2.3.2" level="project" />
121+
<orderEntry type="library" scope="TEST" name="Gradle: org.slf4j:slf4j-api:1.7.21" level="project" />
122+
<orderEntry type="library" scope="TEST" name="Gradle: junit:junit:4.12" level="project" />
123+
<orderEntry type="library" scope="TEST" name="Gradle: org.mockito:mockito-core:2.7.11" level="project" />
124+
<orderEntry type="library" scope="TEST" name="Gradle: org.reflections:reflections:0.9.11" level="project" />
125+
<orderEntry type="library" scope="TEST" name="Gradle: org.hamcrest:hamcrest-core:1.3" level="project" />
126+
<orderEntry type="library" scope="TEST" name="Gradle: net.bytebuddy:byte-buddy:1.6.5" level="project" />
127+
<orderEntry type="library" scope="TEST" name="Gradle: net.bytebuddy:byte-buddy-agent:1.6.5" level="project" />
128+
<orderEntry type="library" scope="TEST" name="Gradle: org.objenesis:objenesis:2.5" level="project" />
129+
<orderEntry type="library" scope="TEST" name="Gradle: com.google.guava:guava:20.0" level="project" />
130+
<orderEntry type="library" scope="TEST" name="Gradle: org.javassist:javassist:3.21.0-GA" level="project" />
131+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-glfw:3.1.4-SNAPSHOT:natives-windows" level="project" />
132+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-jemalloc:3.1.4-SNAPSHOT:natives-windows" level="project" />
133+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-openal:3.1.4-SNAPSHOT:natives-windows" level="project" />
134+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-opengl:3.1.4-SNAPSHOT:natives-windows" level="project" />
135+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl-stb:3.1.4-SNAPSHOT:natives-windows" level="project" />
136+
<orderEntry type="library" scope="TEST" name="Gradle: org.lwjgl:lwjgl:3.1.4-SNAPSHOT:natives-windows" level="project" />
137+
</component>
138+
</module>

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ dependencies {
3232
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlinVersion"
3333
compile "org.jetbrains.kotlin:kotlin-reflect"
3434

35-
compile 'com.github.kotlin-graphics:uno-sdk:96df9f3464b0038f0330851a5c2f2d7e49186f6c'
35+
compile 'com.github.kotlin-graphics:uno-sdk:ef16f55a380962cf14dc5c01ff37575ea0713262'
3636

3737
testCompile 'io.kotlintest:kotlintest:2.0.7'
3838

gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
33
distributionPath=wrapper/dists
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists
6-
distributionUrl=https\://services.gradle.org/distributions/gradle-3.5-all.zip
6+
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip

src/main/kotlin/assimp/SkeletonMeshBuilder.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -106,13 +106,13 @@ constructor(scene: AiScene, root: AiNode? = null, val knobsOnly: Boolean = false
106106
val childpos = AiVector3D(childTransform.a3, childTransform.b3, childTransform.c3)
107107
val distanceToChild = childpos.length()
108108
if (distanceToChild < 0.0001f) continue
109-
val up = AiVector3D(childpos).normalize_()
109+
val up = AiVector3D(childpos).normalizeAssign()
110110

111111
val orth = AiVector3D(1f, 0f, 0f)
112112
if (glm.abs(orth dot up) > 0.99) orth.put(0f, 1f, 0f)
113113

114-
val front = (up cross orth).normalize_()
115-
val side = (front cross up).normalize_()
114+
val front = (up cross orth).normalizeAssign()
115+
val side = (front cross up).normalizeAssign()
116116

117117
val localVertexStart = vertices.size
118118
vertices.add(-front * distanceToChild * 0.1f)

src/main/kotlin/assimp/assimp.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ fun Mat4.decompose(pScaling: AiVector3D, pRotation: AiQuaternion, pPosition: AiV
1515
pPosition.z = this[2][3]
1616

1717
/* extract the columns of the matrix. */
18-
val vCols = arrayOf(
18+
val vCols = listOf(
1919
AiVector3D(this[0][0], this[1][0], this[2][0]),
2020
AiVector3D(this[0][1], this[1][1], this[2][1]),
2121
AiVector3D(this[0][2], this[1][2], this[2][2]))
@@ -26,12 +26,12 @@ fun Mat4.decompose(pScaling: AiVector3D, pRotation: AiQuaternion, pPosition: AiV
2626
pScaling.z = vCols[2].length()
2727

2828
/* and the sign of the scaling */
29-
if (det() < 0) pScaling.negate_()
29+
if (det() < 0) pScaling.negateAssign()
3030

3131
/* and remove all scaling from the matrix */
32-
if (pScaling.x != 0f) vCols[0] div_ pScaling.x
33-
if (pScaling.y != 0f) vCols[1] div_ pScaling.y
34-
if (pScaling.z != 0f) vCols[2] div_ pScaling.z
32+
if (pScaling.x != 0f) vCols[0] /= pScaling.x
33+
if (pScaling.y != 0f) vCols[1] /= pScaling.y
34+
if (pScaling.z != 0f) vCols[2] /= pScaling.z
3535

3636
// build a 3x3 rotation matrix
3737
val m = AiMatrix3x3(

src/main/kotlin/assimp/format/md3/Md3Loader.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -534,7 +534,7 @@ class MD3Importer : BaseImporter() {
534534
val index = buffer.getInt(pTriangles + c * Int.BYTES)
535535
if (index >= surfaces.numVertices) throw Error("MD3: Invalid vertex index")
536536
buffer.position(pVertices + index * MD3.Vertex.size)
537-
mesh.vertices.add(AiVector3D(buffer.short, buffer.short, buffer.short) times_ MD3.XYZ_SCALE)
537+
mesh.vertices.add(AiVector3D(buffer.short, buffer.short, buffer.short).apply { this *= MD3.XYZ_SCALE })
538538
// Convert the normal vector to uncompressed float3 format
539539
mesh.normals.add(MD3.latLngNormalToVec3(buffer.short))
540540

0 commit comments

Comments
 (0)