aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/main.kt
diff options
context:
space:
mode:
authorJames Barnett <noreply@jamesbarnett.xyz>2020-12-29 20:13:01 +0000
committerJames Barnett <noreply@jamesbarnett.xyz>2020-12-29 20:13:01 +0000
commitad192fe7068081ed88f8616581bf450d601e99b1 (patch)
treee3cda400065c051ee628dbeb85709f778c90311e /src/main/kotlin/main.kt
parente816c727624056b91c5ef5152c3121a7f8497c5b (diff)
downloadkotlin-raycaster-ad192fe7068081ed88f8616581bf450d601e99b1.tar.xz
kotlin-raycaster-ad192fe7068081ed88f8616581bf450d601e99b1.zip
Add textures
Diffstat (limited to 'src/main/kotlin/main.kt')
-rw-r--r--src/main/kotlin/main.kt17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/main/kotlin/main.kt b/src/main/kotlin/main.kt
index 65995e1..7533287 100644
--- a/src/main/kotlin/main.kt
+++ b/src/main/kotlin/main.kt
@@ -1,6 +1,7 @@
fun main() {
- val raycaster = Raycaster()
- val renderer = Renderer(viewportWidth = 640, viewportHeight = 480)
+ val renderer = Renderer(viewportWidth = 320, viewportHeight = 240, outputScale = 3)
+ val textureManager = TextureManager()
+ .apply { loadTextures() }
val camera = Camera(
fov = 90,
xPos = 2.0,
@@ -10,7 +11,9 @@ fun main() {
val map = Map()
val minimap = Minimap(map)
- val context = RaycastContext(renderer, camera, map, minimap)
+ val context = RaycastContext(renderer, textureManager, camera, map, minimap)
+
+ val raycaster = Raycaster(stepPrecision = 32)
CameraController(camera, moveSpeed = 0.5, rotateSpeed = 5) {
paint(raycaster, context)
@@ -21,9 +24,11 @@ fun main() {
}
fun paint(raycaster: Raycaster, raycastContext: RaycastContext) {
- raycastContext.renderer.clear()
- raycaster.raycast(raycastContext)
- raycastContext.minimap.update(raycastContext.camera)
+ with(raycastContext) {
+ renderer.clear()
+ raycaster.raycast(this)
+ minimap.update(camera)
+ }
}
fun toRadians(degrees: Double): Double {