Commit graph

601 commits

Author SHA1 Message Date
Nahuel Rocchetti
7ad31c8440
Merge pull request #37 from ammaraskar/scenegraph_txmt
Change vec2 to vec3 in neighborhood decoration deserialization.
2023-07-26 19:35:15 -03:00
Ammar Askar
b1702db774 Change vec2 to vec3 in neighborhood decoration deserialization.
Whoops, this was causing an error with deserialization. Also
finished up the TODO and added a neighborhood that actually
use this type of decoration.
2023-07-26 18:29:51 -04:00
Nahuel Rocchetti
9116713f60
Merge pull request #36 from ammaraskar/scenegraph_txmt
Start showing neighborhood prop decorations
2023-07-26 18:50:20 -03:00
Ammar Askar
e204d8475c Start showing neighborhood prop decorations 2023-07-26 17:08:56 -04:00
Ammar Askar
9cda67d427 Fix index out of bounds in DXT3 conversion when width goes below 4 2023-07-26 17:03:59 -04:00
Nahuel Rocchetti
0590372988 update terrain shader epsilon 2023-07-26 14:33:01 -03:00
Nahuel Rocchetti
9ebdc615a0
Merge pull request #35 from ammaraskar/scenegraph_txmt
Render neighboorhood flora decorations
2023-07-26 08:56:14 -03:00
Nahuel Rocchetti
f850022951 Refactor resource management a little 2023-07-26 08:44:01 -03:00
Nahuel Rocchetti
a091cc8e61 Fix Scenegraph GC, Neighborhood Codec Test and GC Meshes 2023-07-26 08:07:48 -03:00
Ammar Askar
f9c1b104dc Start rendering flora decorations in the neighborhood 2023-07-25 23:44:51 -04:00
Ammar Askar
d7d20efaa2 Add code to render a scenegraph CRES object.
This adds utility functions to fully render out a CRES scenegraph
hierarchy from its model to its materials.
2023-07-25 22:42:03 -04:00
Nahuel Rocchetti
275b4982de
Merge pull request #34 from ammaraskar/scenegraph_txmt
Start reading GMND, SHPE and RES scenegraph files.
2023-07-25 17:03:20 -03:00
Ammar Askar
878e796b64 Start reading GMND, SHPE and RES scenegraph files.
This finishes out the basic structure needed to read all the
different file formats involved in models in scenegraph. While
we don't support animations/bones yet, all the pieces to go from
a RES file to having it be rendered in unity with materials is
now structured out.

Almost all the fields in the internal Scenegraph datastructures
have been reverse engineered, so this codebase is likely now the
best resource when it comes to parsing Scenegraph files.
2023-07-25 13:59:02 -04:00
Nahuel Rocchetti
c7ab6b59ea
Merge pull request #33 from ammaraskar/scenegraph_txmt
Add loading of neighborhood object XML files.
2023-07-20 01:06:57 -03:00
Ammar Askar
2d439d9552 Add loading of neighborhood object XML files.
These are the files that assosciate the neighborhood GUIDs to the
models. This also adds a class to handle cGZPropertySetString
files since we will likely need to parse those more in the future.
2023-07-19 22:50:35 -04:00
Nahuel Rocchetti
4244eeafb7
Merge pull request #31 from ammaraskar/scenegraph_txmt
Start loading neighborhood decorations
2023-07-19 03:01:01 -03:00
Ammar Askar
fcb7484d80 Start loading neighborhood decorations 2023-07-19 00:55:55 -04:00
Nahuel Rocchetti
611c074b0c
Update README.md 2023-07-19 01:01:57 -03:00
Nahuel Rocchetti
afa6d31e7b
Merge pull request #29 from ammaraskar/scenegraph_txmt
Make unity materials from TXMT files.
2023-07-18 18:58:56 -03:00
Ammar Askar
4a9baa86bd Add generated material to GetUnmanagedResources 2023-07-18 15:56:01 -04:00
Nahuel Rocchetti
b04b6c9f20
Merge pull request #30 from ammaraskar/texture_bug
Fix bug with loading non-square textures.
2023-07-18 13:37:56 -03:00
Ammar Askar
c70d2cfb9a Fix bug with loading non-square textures.
We had a case where loading textures of sizes like 32x16 could lead
to one of the dimensions width becoming 0 in the mip-loading loop.
Fix this by making sure the resolution is at least 1.
2023-07-18 12:00:51 -04:00
Ammar Askar
838a642854 Make unity materials from TXMT files.
This adds the StandardMaterial TXMT from the game. We use a simple
Lambert surface shader to handle its rendering. Unfortunately since
there's no easy way in unity to make a surface shader with different
alpha modes based on the shader feature this means we need a shader
per each type of alpha mode: Opaque, CutOut and Blend.

This does lead to some duplicated code in the shaders in terms of the
properties but the body of the shader is stored in a common .cginc
file that gets pulled in with a #include
2023-07-18 11:22:15 -04:00
Nahuel Rocchetti
4dd3c17be3
Merge pull request #28 from ammaraskar/scenegraph_txmt
Add parsing for scenegraph material definitions.
2023-07-15 17:55:01 -03:00
Nahuel Rocchetti
cb5f292350
Merge pull request #27 from ammaraskar/gemoetric_data_vertices
Start reading elements section of GMDC
2023-07-15 17:52:08 -03:00
Ammar Askar
80acfe832b Add parsing for scenegraph material definitions.
This does not yet convert the material definitions to unity
materials. That will be done in a follow up as there are a
bunch of different properties that will need to be handled.
2023-07-15 11:34:48 -04:00
Ammar Askar
d61c666797 Start loading other groups from GMDC models 2023-07-14 23:15:29 -04:00
Ammar Askar
e9931a40db Start reading elements section of GMDC 2023-07-14 20:44:34 -04:00
Nahuel Rocchetti
ea8a311f42 remove unused shader 2023-06-28 12:28:24 -03:00
Nahuel Rocchetti
1894d7cbee don't enter hood when it's the current one 2023-06-27 12:55:58 -03:00
Nahuel Rocchetti
59d8456a83 Grass texture variations 2023-06-26 23:04:32 -03:00
Nahuel Rocchetti
2d4e07485b terrain experiments 2023-06-26 15:23:10 -03:00
Nahuel Rocchetti
5b8ee0aad7 neighborhood textures 2023-06-25 18:59:34 -03:00
Nahuel Rocchetti
5827a5d87a more work on neighborhood shading 2023-06-25 14:12:04 -03:00
Nahuel Rocchetti
fa072d3688 Fix main menu ordering 2023-06-24 20:34:21 -03:00
Nahuel Rocchetti
46c6210764 Add in-game main menu. 2023-06-24 20:09:30 -03:00
Nahuel Rocchetti
fc0e857470 Basic Neighborhood Lighting 2023-06-24 19:54:16 -03:00
Nahuel Rocchetti
d558950971 Debug camera for neighborhood view 2023-06-24 03:26:27 -03:00
Nahuel Rocchetti
942c19536d load all packages for a neighborhood on enter 2023-06-23 13:35:54 -03:00
Nahuel Rocchetti
c612df08f2 UI magic numbers to consts 2023-06-08 03:27:39 -03:00
Nahuel Rocchetti
d85d49a11f Refactor Neighborhood renaming 2023-06-05 02:36:29 -03:00
Nahuel Rocchetti
6415f25db4 Clean up nhood chooser 2023-06-05 00:25:24 -03:00
Nahuel Rocchetti
3964359b3d Refactor neighborhoods to use NID file 2023-06-05 00:16:45 -03:00
Nahuel Rocchetti
568d7309b9
Update Progress. 2023-06-03 03:55:46 -03:00
Nahuel Rocchetti
9a2ebdba92 Add startup scene to build 2023-06-03 03:18:00 -03:00
Nahuel Rocchetti
42e8a751d0 workaround for text highlighting on select 2023-06-02 19:26:37 -03:00
Nahuel Rocchetti
0662760cab Fix Text Caret 2023-06-02 12:50:44 -03:00
Nahuel Rocchetti
5ce1b623e9 Fix DBPF Compression 2023-06-02 04:55:17 -03:00
Nahuel Rocchetti
8373eaec70 Fix main menu page count 2023-06-02 04:07:30 -03:00
Nahuel Rocchetti
91a7b92205 Fix DBPF writing, add neighborhood name/desc edit 2023-06-02 03:55:12 -03:00