import Rendering.*
import org.joml.Vector2f
import org.joml.Vector2i
import org.lwjgl.glfw.GLFW.*
import org.lwjgl.opengl.GL
fun main () {
val win = Window("WiorkTestApp",480,600)
val WH = Vector2i(win.w,win.h)
win.run()
val material = Material("./res/Testingimgs/frogs.png")
val mesh = Primitives.Rectangle(Vector2f(0.5f,0.5f),material, c2MA(hex2rgb("#FFFFFF"),hex2rgb("#FFFFFF"),hex2rgb("#FFFFFF"),hex2rgb("#FFFFFF")))
val renderer = DefaultRenderer(mesh)
renderer.init()
while(!glfwWindowShouldClose(win.window)) {
GL.createCapabilities()
renderer.draw()
glfwSwapBuffers(win.window)
glfwPollEvents()
}
}
- Completely Customisable Renderer
- Editable Source code
- Access to the main VAO and VBO
- Custom vert and frag shaders
make a folder called lib in the root directory than make another folder called Wiork, you then put the jar into the lib/Wiork/ directory
Press ctrl + shift + alt + s then click on dependencies and add the jar as a dependency to main and the entire project
if you're using gradle to build add this as a dependency as well
If you use Eclipse in 2023 thats a fucking you problem ngl
- Texture support + Sprite rendering from png
- Pre defined meshes for simple operations
- Camera system
- Font rendering
- Hot code reloading (game logic get turned into some sort of file that can be used at runtime (ex. dll) and when dll changes reload the code)
- 3d renderer + stl/obj file loading