Skip to content

Commit 6b19e84

Browse files
committed
⬆️
Kotlin 1.2.41 KotlinTest 3.0.6
1 parent 0452df6 commit 6b19e84

File tree

3 files changed

+71
-16
lines changed

3 files changed

+71
-16
lines changed

build.gradle

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ group = 'com.github.kotlin-graphics'
1212

1313
buildscript {
1414

15-
ext.kotlinVersion = '1.2.40'
15+
ext.kotlinVersion = '1.2.41'
1616

1717
repositories {
1818
mavenCentral()
@@ -35,9 +35,9 @@ dependencies {
3535

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

38-
compile 'com.github.kotlin-graphics:gln:b45da5f3bed9b2aaa4e8a1216a6752b8ceb1e4b3'
38+
compile 'com.github.kotlin-graphics:gln:401a690455ba514658aa62e30ab117625af473ee'
3939

40-
testCompile 'io.kotlintest:kotlintest-runner-junit5:3.0.4'
40+
testCompile 'io.kotlintest:kotlintest-runner-junit5:3.0.6'
4141

4242
compile "org.jetbrains.kotlin:kotlin-reflect:$kotlinVersion"
4343

src/main/kotlin/uno/buffer/of.kt

Lines changed: 66 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,12 @@ import glm_.BYTES
44
import glm_.i
55
import glm_.set
66
import glm_.vec2.Vec2
7+
import glm_.vec2.Vec2i
78
import glm_.vec3.Vec3
9+
import glm_.vec3.Vec3i
810
import glm_.vec4.Vec4
911
import glm_.vec4.Vec4b
12+
import glm_.vec4.Vec4i
1013
import gln.glf.Vertex
1114
import gln.glf.glf
1215
import org.lwjgl.system.MemoryUtil
@@ -95,15 +98,18 @@ fun bufferOf(vertices: Collection<*>): ByteBuffer {
9598
when (vertices.elementAt(0)) {
9699
is Vec2 -> {
97100
res = bufferBig(Vec2.size * vertices.size)
98-
for (i in 0 until vertices.size) (vertices.elementAt(i) as Vec2).to(res, i * Vec2.size)
101+
for (i in 0 until vertices.size)
102+
(vertices.elementAt(i) as Vec2).to(res, i * Vec2.size)
99103
}
100104
is Vec3 -> {
101105
res = bufferBig(Vec3.size * vertices.size)
102-
for (i in 0 until vertices.size) (vertices.elementAt(i) as Vec3).to(res, i * Vec3.size)
106+
for (i in 0 until vertices.size)
107+
(vertices.elementAt(i) as Vec3).to(res, i * Vec3.size)
103108
}
104109
is Vec4 -> {
105110
res = bufferBig(Vec4.size * vertices.size)
106-
for (i in 0 until vertices.size) (vertices.elementAt(i) as Vec4).to(res, i * Vec4.size)
111+
for (i in 0 until vertices.size)
112+
(vertices.elementAt(i) as Vec4).to(res, i * Vec4.size)
107113
}
108114
is Vertex.pos2_tc2 -> {
109115
res = bufferBig(glf.pos2_tc2.stride * vertices.size)
@@ -129,21 +135,35 @@ fun bufferOf(vertices: Collection<*>): ByteBuffer {
129135
fun bufferOf(vararg vertices: Any): ByteBuffer {
130136
val res: ByteBuffer
131137
when (vertices.elementAt(0)) {
138+
is Float -> {
139+
res = bufferBig(Float.BYTES * vertices.size)
140+
for (i in 0 until vertices.size)
141+
res.putFloat(i * Float.BYTES, (vertices[i] as Float))
142+
}
143+
is Int -> {
144+
res = bufferBig(Int.BYTES * vertices.size)
145+
for (i in 0 until vertices.size)
146+
res.putInt(i * Int.BYTES, (vertices[i] as Int))
147+
}
132148
is Vec2 -> {
133149
res = bufferBig(Vec2.size * vertices.size)
134-
for (i in 0 until vertices.size) (vertices[i] as Vec2).to(res, i * Vec2.size)
150+
for (i in 0 until vertices.size)
151+
(vertices[i] as Vec2).to(res, i * Vec2.size)
135152
}
136153
is Vec3 -> {
137154
res = bufferBig(Vec3.size * vertices.size)
138-
for (i in 0 until vertices.size) (vertices[i] as Vec3).to(res, i * Vec3.size)
155+
for (i in 0 until vertices.size)
156+
(vertices[i] as Vec3).to(res, i * Vec3.size)
139157
}
140158
is Vec4 -> {
141159
res = bufferBig(Vec4.size * vertices.size)
142-
for (i in 0 until vertices.size) (vertices[i] as Vec4).to(res, i * Vec4.size)
160+
for (i in 0 until vertices.size)
161+
(vertices[i] as Vec4).to(res, i * Vec4.size)
143162
}
144163
is Vec4b -> {
145164
res = bufferBig(Vec4b.size * vertices.size)
146-
for (i in 0 until vertices.size) (vertices[i] as Vec4b).to(res, i * Vec4b.size)
165+
for (i in 0 until vertices.size)
166+
(vertices[i] as Vec4b).to(res, i * Vec4b.size)
147167
}
148168
is Vertex.pos2_tc2 -> {
149169
res = bufferBig(glf.pos2_tc2.stride * vertices.size)
@@ -178,17 +198,53 @@ fun bufferOf(vararg vertices: Any): ByteBuffer {
178198
fun floatBufferOf(vertices: Collection<*>): FloatBuffer {
179199
val res: FloatBuffer
180200
when (vertices.elementAt(0)) {
201+
is Float -> {
202+
res = floatBufferBig(vertices.size)
203+
for (i in 0 until vertices.size)
204+
res.put(i * Float.BYTES, (vertices.elementAt(i) as Float))
205+
}
181206
is Vec2 -> {
182207
res = floatBufferBig(Vec2.length * vertices.size)
183-
for (i in 0 until vertices.size) (vertices.elementAt(i) as Vec2).to(res, i * Vec2.length)
208+
for (i in 0 until vertices.size)
209+
(vertices.elementAt(i) as Vec2).to(res, i * Vec2.length)
184210
}
185211
is Vec3 -> {
186212
res = floatBufferBig(Vec3.length * vertices.size)
187-
for (i in 0 until vertices.size) (vertices.elementAt(i) as Vec3).to(res, i * Vec3.length)
213+
for (i in 0 until vertices.size)
214+
(vertices.elementAt(i) as Vec3).to(res, i * Vec3.length)
188215
}
189216
is Vec4 -> {
190217
res = floatBufferBig(Vec4.length * vertices.size)
191-
for (i in 0 until vertices.size) (vertices.elementAt(i) as Vec4).to(res, i * Vec4.length)
218+
for (i in 0 until vertices.size)
219+
(vertices.elementAt(i) as Vec4).to(res, i * Vec4.length)
220+
}
221+
else -> throw Error()
222+
}
223+
return res
224+
}
225+
226+
fun intBufferOf(vertices: Collection<*>): IntBuffer {
227+
val res: IntBuffer
228+
when (vertices.elementAt(0)) {
229+
is Int -> {
230+
res = intBufferBig(vertices.size)
231+
for (i in 0 until vertices.size)
232+
res.put(i * Int.BYTES, (vertices.elementAt(i) as Int))
233+
}
234+
is Vec2i -> {
235+
res = intBufferBig(Vec2i.length * vertices.size)
236+
for (i in 0 until vertices.size)
237+
(vertices.elementAt(i) as Vec2i).to(res, i * Vec2i.length)
238+
}
239+
is Vec3i -> {
240+
res = intBufferBig(Vec3i.length * vertices.size)
241+
for (i in 0 until vertices.size)
242+
(vertices.elementAt(i) as Vec3i).to(res, i * Vec3i.length)
243+
}
244+
is Vec4i -> {
245+
res = intBufferBig(Vec4i.length * vertices.size)
246+
for (i in 0 until vertices.size)
247+
(vertices.elementAt(i) as Vec4i).to(res, i * Vec4i.length)
192248
}
193249
else -> throw Error()
194250
}

src/test/kotlin/uno/imgui.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
package uno
22

3-
import glm_.c
43
import glm_.i
54
import glm_.uc
6-
import uno.convert.decode85
7-
import io.kotlintest.matchers.shouldBe
5+
import io.kotlintest.shouldBe
86
import io.kotlintest.specs.StringSpec
7+
import uno.convert.decode85
98
import uno.kotlin.file
109
import uno.stb.stb
1110

0 commit comments

Comments
 (0)