-
Notifications
You must be signed in to change notification settings - Fork 11
Adding cyfra-rtrp Module #51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
…ries and packages
convert to new Scala 3 syntax
SpirvTools are now integrated into the flow.
cyfra-rtrp/src/main/scala/io/computenode/cyfra/rtrp/window/WindowManager.scala
Outdated
Show resolved
Hide resolved
cyfra-rtrp/src/main/scala/io/computenode/cyfra/rtrp/window/platform/GLFWWindowSystem.scala
Outdated
Show resolved
Hide resolved
| var running = true | ||
| var frameCount = 0 | ||
|
|
||
| while (running && !window.shouldClose) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should have an abstraction over the "game loop", but probably not at this stage. In what part could we put it later on?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
maybe new gameloop or engine-like module
* Added "-feature", "-deprecation", "-unchecked", "-language:implicitConversions" to scalacOptions
Whole code base should now use Scala3 new syntax and significant indents. If anyone sees unnecessary {} that I missed, please get rid of them.
2d374c6 to
47ed129
Compare
rtrp-surface
Window Management Details
Core Components
Window Interface:
WindowConfig:
WindowSystem Interface:
WindowEvents:
GLFW-Specific Components
GLFWWindow:
Windowinterface using GLFW. Handles window-specific operations like resizing and input events.GLFWWindowSystem:
WindowSysteminterface using GLFW. Manages the lifecycle of windows and integrates Vulkan support.WindowManager
The
WindowManageris a higher-level class that simplifies working with windows. It acts as a wrapper around theWindowSystemand provides methods to:Example
The
WindowSystemExamplefile shows how to use theWindowManagerto create windows and respond to events like resizing or key presses.