920180b51a
Introduce a standard Clone function
...
So it can check if a source directory already exists, and introduces
some better error handling when things go ary.
2024-04-25 22:11:09 +00:00
NotNite
080cf69fab
Add scripts for building on Windows
2024-04-25 22:11:09 +00:00
2844231996
Enable Windows and Linux packaging
...
The Windows version isn't super working yet, but this is a good step forward
2024-04-25 02:31:40 +00:00
1e898130b9
Add GitHub actions
...
It now builds Novus (and it's dependencies) for Windows and Linux. Artifacts and macOS support will come later.
2024-04-24 21:39:43 +00:00
503cbbc5cb
Note that git submodules must be cloned
2024-04-22 16:20:04 -04:00
ef8cec1977
Note that there's no builds at the moment in the README
2024-04-22 16:17:46 -04:00
a443c66a3f
Remove CONTRIBUTING (merge it into README) and fix BUILDING instructions
2024-04-22 16:16:50 -04:00
0245e15ddf
Fix the wrong folder-symbolic icon being used
...
This affected dark themes, oops.
2024-04-22 16:12:44 -04:00
cf6b97930f
Allow empty materials that have no set shader package
2024-04-22 16:12:26 -04:00
cb18b54cde
Add a map editor icon, fix .desktop file
2024-04-22 16:12:08 -04:00
75ab62ba71
Update READMEs, update screenshots
2024-04-22 16:11:54 -04:00
04717aea62
Add missing header in swapchain.h
2024-04-22 15:47:45 -04:00
97eee9fc5c
Update README
2024-04-22 15:16:31 -04:00
87e9d651eb
Add funding link for GitHub
2024-04-22 15:12:15 -04:00
583845cc1a
Make libphysis module path relative
2024-04-22 15:08:19 -04:00
84887a5470
Start working on normals support
2024-04-21 19:56:52 -04:00
74f754b382
Implement some stuff required for skin shaders
...
Punching some holes to allow shaders to access textures
2024-04-21 19:45:21 -04:00
af806bff63
Remove hardcoded character.shpk path
...
Now the new renderer should load the material's requested shader package
2024-04-21 19:07:09 -04:00
dcb54cf4e3
Begin working on bone support for the new renderer
...
Doesn't work completely yet (not sure why) but for basic items it works.
2024-04-21 18:49:48 -04:00
e34daadbcd
Split up Renderer's source files and a lot of refactoring
...
This now splits up the rendering system into sensible parts, and makes
it easier to switch between the simple renderer and the new experimental
one. Lots of refactors I needed to do for a while are now done, too.
2024-04-21 17:35:51 -04:00
5317300aaf
Remove GLM_FORCE_LEFT_HANDED
...
This wasn't needed after all, and fixes both the new and old renderers.
2024-04-21 14:15:17 -04:00
8ea47a5502
Make a note why there's no UV coordinates for the plane vertices
2024-04-21 14:12:56 -04:00
0e739187ab
Make the render size not hardcoded to 640x480 in the new renderer
2024-04-21 14:11:40 -04:00
7bba79f62f
Make lighting work (finally)
...
Now it can display a directional light source, albeit in a tiny
hardcoded size. Time to clean up my mess!
2024-04-21 14:05:41 -04:00
eb9e5dc094
Implement more of g_CameraParameter
2024-04-21 13:29:30 -04:00
ec47e52f80
Implement view position extraction, and provide g_SamplerDepth
2024-04-21 13:17:40 -04:00
ed9d6e62b8
More stuff that's needed for directional lighting
...
It's not working yet as we're missing view positions and the normal
clear color is wrong, but it's getting there. It can display a nice
blobby plane with the light color right now.
2024-04-21 13:04:25 -04:00
7f1c167251
Create GBuffer (normals only for now) and render into it
2024-04-21 12:00:13 -04:00
fd61cfca26
"Implement" the directional lighting pass, fix GBuffer normal
...
Implement is in quotes because it doesn't work yet, the code is just
written. We still need actual framebuffers to do work in and not the
swapchain image we're reusing.
In other news, the GBuffer shader now works and outputs normals! I
forced it to simple texture mode for now so it makes development easier.
2024-04-21 11:52:30 -04:00
2d17af5675
Fix the dummy texture not actually being white
2024-04-21 11:50:56 -04:00
0d303f0e6e
Add dummy shader for testing purposes
...
This is used to make sure the vertex stage successfully completed, thats
it.
2024-04-21 11:50:39 -04:00
81bdef14ca
Remove and simplify code in the render system
2024-04-21 10:30:51 -04:00
2f8f155a6c
Begin implementation of directional lighting
...
This takes the correct node from directionallighting.shpk, but doesn't
draw anything yet as we're missing GBuffers.
2024-04-21 10:25:52 -04:00
d651f56e2b
No longer hardcode the SHPK node selector
2024-04-21 10:08:55 -04:00
699141d04b
Pass real data to the new render system
...
Based off of structures reversed engineered by Ouroboros, now it can
render objects without shading! Note that it breaks the basic renderer
at the moment, will be fixed later.
2024-04-21 09:01:02 -04:00
640099f9db
Fix compilation on Fedora
2024-04-21 07:02:34 -04:00
b9b162b377
Add experimental new rendering system
...
I started writing this late last year, and finally uploading parts of
it. Currently, doesn't work, but doesn't crash either. Enable it via
the NOVUS_USE_NEW_RENDERER environment variable.
The goal is to use the game's own shaders instead of creating our own,
it's lacking support for buffers with actual data in them and constants
so while it "works" nothing is displayed on screen yet.
2024-04-20 17:29:29 -04:00
db50a7ff36
Fix translation error in shpk part, prevent crashes when decomp fails
2024-04-20 15:45:19 -04:00
02ce1c2f51
Renderer: Add a slight ambient to not make shadows pitch black
2024-04-20 15:38:49 -04:00
26c7fad3a0
MDLViewer: Add lod and triangle count
2024-04-20 15:32:32 -04:00
c7b618e6bc
Armoury: Make sure the import and edit buttons are disabled when needed
2024-04-20 15:14:49 -04:00
1bddb6f8f0
Armoury: Add gear icons
2024-04-20 15:11:02 -04:00
384f23ef1e
Add support for viewing dictionary files
2024-04-18 22:21:53 -04:00
ce29debf24
Add action to Data Explorer to copy the file path
2024-04-18 18:57:28 -04:00
002a460379
Prevent crash in map editor when it loads an invalid plate model
2024-04-18 18:53:21 -04:00
16759394c7
Clear model viewer before adding another model, prevent crash
2024-04-18 18:53:08 -04:00
d04f20a445
Add file types icons to the Data Explorer
2024-04-18 18:50:02 -04:00
9d129163bb
Add a standard way to detect game file types from their extensions
...
This is now used to populate the file properties window in the Data Explorer.
2024-04-18 18:42:36 -04:00
5c907b63da
Add a wireframe checkbox to MDLViewer
2024-04-18 18:08:50 -04:00
ab1d02b25a
Add configurable camera distance, set to a smaller minimum in MDLViewer
2024-04-18 18:08:50 -04:00