91 lines
3.0 KiB
Markdown
91 lines
3.0 KiB
Markdown
# orx-mesh-generators
|
|
|
|
Generates 3D meshes: sphere, box, cylinder, plane, dodecahedron.
|
|
|
|
##### usage
|
|
|
|
```kotlin
|
|
val sphere = sphereMesh(32, 32, 4.0)
|
|
val unitSphere = sphereMesh()
|
|
val cube = boxMesh()
|
|
val box = boxMesh(2.0, 4.0, 2.0)
|
|
|
|
...
|
|
|
|
drawer.vertexBuffer(sphere, DrawPrimitive.TRIANGLES)
|
|
drawer.vertexBuffer(unitSphere, DrawPrimitive.TRIANGLES)
|
|
drawer.vertexBuffer(cube, DrawPrimitive.TRIANGLES)
|
|
drawer.vertexBuffer(box, DrawPrimitive.TRIANGLES)
|
|
|
|
```
|
|
|
|
## API
|
|
|
|
```kotlin
|
|
fun sphereMesh(
|
|
sides: Int = 16,
|
|
segments: Int = 16,
|
|
radius: Double = 1.0,
|
|
invert: Boolean = false): VertexBuffer
|
|
|
|
fun groundPlaneMesh(
|
|
width: Double = 1.0,
|
|
height: Double = 1.0,
|
|
widthSegments: Int = 1,
|
|
heightSegments: Int): VertexBuffer
|
|
|
|
fun boxMesh(
|
|
width: Double = 1.0,
|
|
height: Double = 1.0,
|
|
depth: Double = 1.0,
|
|
widthSegments: Int = 1,
|
|
heightSegments: Int = 1,
|
|
depthSegments: Int = 1,
|
|
invert: Boolean = false): VertexBuffer
|
|
```
|
|
<!-- __demos__ >
|
|
# Demos
|
|
[DemoBoxKt](src/demo/kotlin/DemoBoxKt.kt
|
|

|
|
|
|

|
|
|
|
### DemoComplex01
|
|
[source code](src/demo/kotlin/DemoComplex01.kt)
|
|
|
|

|
|
|
|
### DemoComplex02
|
|
[source code](src/demo/kotlin/DemoComplex02.kt)
|
|
|
|

|
|
|
|
### DemoComplex03
|
|
[source code](src/demo/kotlin/DemoComplex03.kt)
|
|
|
|

|
|
|
|
### DemoComplex04
|
|
[source code](src/demo/kotlin/DemoComplex04.kt)
|
|
|
|

|
|
|
|
### DemoComplex05
|
|
[source code](src/demo/kotlin/DemoComplex05.kt)
|
|
|
|

|