Commits on Source (97)
-
Vanessa Karolek authored
This seems to work but we need to prevent gimbal lock. Maybe we will also find a better way to switch between cameras
-
Vanessa Karolek authored
-
Vanessa Karolek authored
-
Vanessa Karolek authored
Just comment/uncomment lines to switch between normal camera and trackball camera (:
-
Josch Morgenstern authored
-
Josch Morgenstern authored
-
Vanessa Karolek authored
-
Vanessa Karolek authored
... because Vulkan is a bit different :D
-
Vanessa Karolek authored
-
Vanessa Karolek authored
-
Vanessa Karolek authored
-
Vanessa Karolek authored
-
Vanessa Karolek authored
For convenience reasons: - Right mouse movement leads to camera movement to the left (background changes to the right) - Left mouse movement leads to camera movement to the right (background changes to the left)
-
Vanessa Karolek authored
Before, the camera object was just able to move along the xz plane. For vertical movement, you have to pan view and then use forward or backward movement to move up or down. This might be not so handy for the user. Now, you can use E to move up and use Q to move down (both along default world up vector).
-
Sebastian Gaida authored
-
Trevor Hollmann authored
This commit only defines the structs and makes sure that the construction is still valid, but does not implement the usage of the new structs.
-
Trevor Hollmann authored
-
Trevor Hollmann authored
The implementation in asset_loader.cpp is still a hack, as is the usage in main.cpp, but the hack is now using the textures array of the mesh and the struct could be cleaned up to get rid of the hack in the modules interface.
-
Trevor Hollmann authored
-
Trevor Hollmann authored
This commit has breaking changes to the API header of the asset_loader, meaning things will not compile until the implementation in asset_loader.cpp is adjusted.
-
Susanne Dötsch authored
gltf fuer Szene zum testen hinzugefuegt
-
Mara Vogt authored
materials are not yet included, textures are still necessary for rendering gltf with 3 meshes as test file (Szene.gltf)
-
Trevor Hollmann authored
As requested by @tfrish in mattermost. That's only the additions in lines 16..24. The rest of the changes are a clean-up of spaces and tabs.
-
Trevor Hollmann authored
-
Trevor Hollmann authored
At the same time make use of the new UNDEFINED value for error detection.
-
Trevor Hollmann authored
-
Mara Vogt authored
materials can now be loaded
-
Vanessa Karolek authored
Vulkan uses a left handed coordinate system. Thus, we need to define GLM_FORCE_LEFT_HANDED and adjust left and right movement of the camera. We also need to define GLM_DEPTH_ZERO_TO_ONE for the depth values which range between 0 and 1 in Vulkan. Although the up vector is pointing upwards again, it seems that the rendered scene is not flipped along y axis... is this correct?
-
Trevor Hollmann authored
-
Trevor Hollmann authored
-
Trevor Hollmann authored
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Mara Vogt authored
-
Mara Vogt authored
the application does not work as inteded yet, it is currently being debugged
-
Vanessa Karolek authored
1) Now there is only one camera class (no inheritance anymore). Furthermore, the camera object is separated from camera controls and only manages camera specific information, such as the view matrix, projection matrix, the position, etc. Camera controls are now handled via camera controller objects. 2) The CameraManager now manages an arbitrary number of camera controllers, such as PilotCameraController or TrackballCameraController (TraceCameraController will be implemented soon!). Before you can use a camera object in your render loop, you need to add at least one camera. You do not have to use a camera controller to render something, but you need to implement camera movements yourself... If you want to CONTROL a camera object, you can make use of the existing camera controller objects. To create a controller, you need to add a camera controller object to the camera manager and specify which camera should be used for this controller. You can change the bound camera whenever you like to. To switch between all existing camera controllers, you can use the active controller in the render loop and change the cycle between all camera controllers via Tab. See the example projects for an examplary application. 3) Currently, events are only handled for the active camera controller. 4) DISCUSSION: We use the 'new' keyword within the camera manager class. Unfortunately, we did not find any other way to create an object (such as the camera controller) inside the scope of one function and make use of the inheritance (only pointers seem to support this) or to refer to an object that updates everywhere where it is refered. To not lose the object at specified memory location, we need to create it via 'new' and ensure that all allocated objects are deleted within the destructor of the camera manager. Find this lines at the 'TODO' marked locations. If you have a better idea to solve this problem, please let us know. :)
-
Vanessa Karolek authored
Merge branch 'develop' into 42-kamera-trackballkamera and update all main.cpp so that they can work with the current camera objects # Conflicts: # modules/camera/include/vkcv/camera/Camera.hpp # modules/camera/include/vkcv/camera/CameraManager.hpp # modules/camera/src/vkcv/camera/Camera.cpp # modules/camera/src/vkcv/camera/CameraManager.cpp # projects/first_mesh/src/main.cpp # projects/first_triangle/src/main.cpp
-
Vanessa Karolek authored
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Josch Morgenstern authored
-
Josch Morgenstern authored
cameras + controllertypeenums in vector remove cameraController vector remove activeControllerIndex remove methods regarding cameraController objects add methods regarding camera objects
-
Josch Morgenstern authored
deletion of controllers and cameras no longer needed move window manipulation from controller to manager move calculation of lastx and lasty from controller to manager remove methods concering handling of cameraController vector add methods concerning management of camera vector
-
Josch Morgenstern authored
-
Josch Morgenstern authored
-
Josch Morgenstern authored
-
Josch Morgenstern authored
-
Vanessa Karolek authored
-
Vanessa Karolek authored
-
Vanessa Karolek authored
-
Vanessa Karolek authored
Per default: index = 0 is the active camera. The user should determine himself via setActiveCamera which camera should be active
-
Vanessa Karolek authored
-
Vanessa Karolek authored
-
Vanessa Karolek authored
-
Vanessa Karolek authored
Before: If more than one trackball camera controller is added to your application, changing the m_radius variable via scroll event would lead to adjusting the radius for all cameras attached to the trackball camera controller. After: Before updating the radius, the m_radius variable is changed in respect to the current distance from the camera to its center point. This enables handling all cameras with attached trackball camera controller separately.
-
Vanessa Karolek authored
-
Vanessa Karolek authored
-
Tobias Frisch authored
[#42] Simplified update methods, replaced clones to references, added namespace, corrected applications Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Tobias Frisch authored
Merge branch '42-kamera-trackballkamera' of gitlab.uni-koblenz.de:vulkan2021/vkcv-framework into 42-kamera-trackballkamera
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Alexander Gauggel authored
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Vanessa Karolek authored
-
Alexander Gauggel authored
-
Alexander Gauggel authored
Resolve "Kamera - Trackballkamera" Closes #42 See merge request !35
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Mara Vogt authored
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Mara Vogt authored
correction in matrix conversion
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Alexander Gauggel authored
Resolve "Runtime shader compilation" Closes #73 See merge request !60
-
Mara Vogt authored
improved computeModelMatrix
-
Trevor Hollmann authored
-
Trevor Hollmann authored
-
Susanne Dötsch authored
Also added some test files
-
Susanne Dötsch authored
Merge branch '63-laden-mehrer-meshes-mit-materials-und-textures' of gitlab.uni-koblenz.de:vulkan2021/vkcv-framework into 63-laden-mehrer-meshes-mit-materials-und-textures
-
Alexander Gauggel authored
-
Alexander Gauggel authored
-
Alexander Gauggel authored
-
Alexander Gauggel authored
-
Alexander Gauggel authored
-
Susanne Dötsch authored
-
Susanne Dötsch authored
-
Susanne Dötsch authored
-
Mara Vogt authored
deleted load_mesh function added documentation
-
Alexander Gauggel authored
-
Alexander Gauggel authored
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Tobias Frisch authored
Merge branch '63-laden-mehrer-meshes-mit-materials-und-textures' of gitlab.uni-koblenz.de:vulkan2021/vkcv-framework into 63-laden-mehrer-meshes-mit-materials-und-textures
-
Alexander Gauggel authored
-
Tobias Frisch authored
Signed-off-by:
Tobias Frisch <tfrisch@uni-koblenz.de>
-
Tobias Frisch authored
Merge branch '63-laden-mehrer-meshes-mit-materials-und-textures' of gitlab.uni-koblenz.de:vulkan2021/vkcv-framework into 63-laden-mehrer-meshes-mit-materials-und-textures
-
Tobias Frisch authored
Resolve "Laden mehrer Meshes mit Materials und Textures" Closes #63 See merge request !51
Showing
- .gitmodules 4 additions, 1 deletion.gitmodules
- config/Sources.cmake 0 additions, 1 deletionconfig/Sources.cmake
- include/vkcv/PipelineConfig.hpp 1 addition, 20 deletionsinclude/vkcv/PipelineConfig.hpp
- include/vkcv/ShaderProgram.hpp 1 addition, 1 deletioninclude/vkcv/ShaderProgram.hpp
- include/vkcv/VertexLayout.hpp 1 addition, 1 deletioninclude/vkcv/VertexLayout.hpp
- modules/CMakeLists.txt 1 addition, 0 deletionsmodules/CMakeLists.txt
- modules/asset_loader/include/vkcv/asset/asset_loader.hpp 104 additions, 35 deletionsmodules/asset_loader/include/vkcv/asset/asset_loader.hpp
- modules/asset_loader/src/vkcv/asset/asset_loader.cpp 308 additions, 149 deletionsmodules/asset_loader/src/vkcv/asset/asset_loader.cpp
- modules/camera/CMakeLists.txt 5 additions, 2 deletionsmodules/camera/CMakeLists.txt
- modules/camera/include/vkcv/camera/Camera.hpp 152 additions, 54 deletionsmodules/camera/include/vkcv/camera/Camera.hpp
- modules/camera/include/vkcv/camera/CameraController.hpp 64 additions, 0 deletionsmodules/camera/include/vkcv/camera/CameraController.hpp
- modules/camera/include/vkcv/camera/CameraManager.hpp 167 additions, 23 deletionsmodules/camera/include/vkcv/camera/CameraManager.hpp
- modules/camera/include/vkcv/camera/PilotCameraController.hpp 138 additions, 0 deletionsmodules/camera/include/vkcv/camera/PilotCameraController.hpp
- modules/camera/include/vkcv/camera/TrackballCamera.hpp 0 additions, 49 deletionsmodules/camera/include/vkcv/camera/TrackballCamera.hpp
- modules/camera/include/vkcv/camera/TrackballCameraController.hpp 100 additions, 0 deletions.../camera/include/vkcv/camera/TrackballCameraController.hpp
- modules/camera/src/vkcv/camera/Camera.cpp 82 additions, 112 deletionsmodules/camera/src/vkcv/camera/Camera.cpp
- modules/camera/src/vkcv/camera/CameraManager.cpp 124 additions, 54 deletionsmodules/camera/src/vkcv/camera/CameraManager.cpp
- modules/camera/src/vkcv/camera/PilotCameraController.cpp 155 additions, 0 deletionsmodules/camera/src/vkcv/camera/PilotCameraController.cpp
- modules/camera/src/vkcv/camera/TrackballCamera.cpp 0 additions, 146 deletionsmodules/camera/src/vkcv/camera/TrackballCamera.cpp
- modules/camera/src/vkcv/camera/TrackballCameraController.cpp 100 additions, 0 deletionsmodules/camera/src/vkcv/camera/TrackballCameraController.cpp