// This is a port of https://github.com/raysan5/raylib/blob/master/examples/core/core_2d_camera.c package raylib_example_2d_camera import kl "../../.." import "core:math/rand" import "core:math" MAX_BUILDINGS :: 100 SCREEN_WIDTH :: 800 SCREEN_HEIGHT :: 450 main :: proc() { kl.init(SCREEN_WIDTH, SCREEN_HEIGHT, "karlib: 2d camera (raylib [core] example - 2d camera)") player := kl.Rect { 400, 280, 40, 40 } buildings: [MAX_BUILDINGS]kl.Rect building_colors: [MAX_BUILDINGS]kl.Color spacing: f32 for i in 0.. 40 { camera.rotation = 40 } else if camera.rotation < -40 { camera.rotation = -40 } camera.zoom = math.exp(math.log(camera.zoom, math.E) + f32(kl.get_mouse_wheel_delta() * 0.1)) if camera.zoom > 3 { camera.zoom = 3 } else if camera.zoom < 0.1 { camera.zoom = 0.1 } if kl.key_went_down(.R) { camera.zoom = 1 camera.rotation = 0 } kl.clear({ 245, 245, 245, 255 }) kl.set_camera(camera) kl.draw_rect({-6000, 320, 13000, 8000}, kl.DARKGRAY) for i in 0..