Commit graph

936 commits

Author SHA1 Message Date
Vsevolod Kremianskii
4f3e28d8df refactor: Delete CubeSceneNode in favor of MeshSceneNode 2021-02-14 10:11:17 +07:00
Vsevolod Kremianskii
ccfb627a21 refactor: Use Texture abstraction in Video 2021-02-14 10:08:50 +07:00
Vsevolod Kremianskii
1d72765265 refactor: Reorganize librender files 2021-02-14 09:36:57 +07:00
Vsevolod Kremianskii
730263881f refactor: Replace Singleton with boost::noncopyable 2021-02-14 08:55:35 +07:00
Vsevolod Kremianskii
d6d14fed0e refactor: Move mesh management into Meshes class 2021-02-13 23:57:35 +07:00
Vsevolod Kremianskii
e9cc030c61 refactor: Use MemoryCache abstraction in obvious cases 2021-02-13 22:36:44 +07:00
Vsevolod Kremianskii
78e8126961 refactor: Add Singleton base class to reduce duplication 2021-02-13 22:14:28 +07:00
Vsevolod Kremianskii
bdd369f5e4 feat: Finalize PBR support, refactor shaders
- Implement loading materials from material.2da
- Fix BRDF lookup texture creation
- Add a global variable to switch between PBR and Blinn-Phong
2021-02-13 18:46:31 +07:00
Vsevolod Kremianskii
b196233ffe feat: Enable combining lightmaps with PBR lighting 2021-02-12 21:44:49 +07:00
Vsevolod Kremianskii
9ff3227c3a feat: Enable loading metallic and roughness from lookup table 2021-02-12 21:19:31 +07:00
Vsevolod Kremianskii
a844812a13 chore: Take light multiplier into account 2021-02-12 20:13:32 +07:00
Vsevolod Kremianskii
5310e1d0b3 chore: Consider lights with radius 50 and more directional 2021-02-12 20:06:58 +07:00
Vsevolod Kremianskii
cb7edd7e4f chore: Increase maximum number of lights to 8 2021-02-12 20:06:36 +07:00
Vsevolod Kremianskii
c927bffce8 feat: Implement specular IBL as part of PBR
While at it, refactor framebuffer and texture abstractions.
2021-02-12 19:28:02 +07:00
Vsevolod Kremianskii
28cbbd7dbb Add images for the project Wiki 2021-02-12 11:27:43 +07:00
Vsevolod Kremianskii
d8bb48150e fix(render): Fix setting render flag on textureless _characters_ 2021-02-12 10:01:07 +07:00
Vsevolod Kremianskii
608f132ac8 fix(render): Re-enable textureless rendering 2021-02-12 09:52:52 +07:00
Vsevolod Kremianskii
8550157b53 fix(game): Re-enable conversations 2021-02-12 09:29:18 +07:00
Vsevolod Kremianskii
e461f3246e fix(scene): Prevent invalid_argument in AnimationChannel 2021-02-12 02:17:18 +07:00
Vsevolod Kremianskii
157c562ab9 feat: Implement physically based rendering 2021-02-12 02:05:30 +07:00
Vsevolod Kremianskii
727e82b708 feat: Implement lip sync animation 2021-02-11 17:57:03 +07:00
Vsevolod Kremianskii
8df62d5b48 refactor: Refactor SceneNodeAnimator
AnimationChannel is extracted into a separate class.
2021-02-11 16:51:42 +07:00
Vsevolod Kremianskii
2566e0d1e4 feat: Implement loading LIP files in conversations 2021-02-10 17:54:55 +07:00
Vsevolod Kremianskii
746a742744 fix(game): Do not update GUI when in first person camera mode 2021-02-10 00:20:10 +07:00
Vsevolod Kremianskii
17d24de3cf feat: Make camera toggle and game speed controls exclusive to devmode 2021-02-09 23:54:39 +07:00
Vsevolod Kremianskii
383905b790 feat: Add developer mode program option
Warp button is not visible when NOT in developer mode. More to come.
2021-02-09 23:34:47 +07:00
Vsevolod Kremianskii
46cd29d9e9 feat: Add separate program option for voice volume 2021-02-09 23:11:40 +07:00
Vsevolod Kremianskii
c02bfb4931 chore(tools): Cleanup, drop unimplemented operations
JSON to GFF and JSON to TLK converters need more analysis.
2021-02-09 22:47:04 +07:00
Vsevolod Kremianskii
2f4d568c15 refactor: Streamline and cleanup tools 2021-02-09 14:53:53 +07:00
Vsevolod Kremianskii
41dca204fa feat: Add JSON to 2DA conversion tool 2021-02-09 12:40:14 +07:00
Vsevolod Kremianskii
f53cd8f7ce feat: Enable rendering of textureless meshes 2021-02-09 10:05:59 +07:00
Vsevolod Kremianskii
4d8aa6df8a chore: Remember when loaded model node is a saber plane 2021-02-09 09:25:36 +07:00
Vsevolod Kremianskii
96c191e9df refactor: Rename PositionKeyframe to TranslationKeyframe 2021-02-09 09:25:36 +07:00
Vsevolod Kremianskii
cf487d13bb refactor: Split reone-tools Convert command into ToJson and ToTga 2021-02-09 08:45:00 +07:00
Vsevolod Kremianskii
c50bd65822 chore: Make reone-tools read options from a separate config file 2021-02-09 08:38:37 +07:00
Vsevolod Kremianskii
102803c804 fix: Change default blending function to preserve destination alpha
This is how particles were supposed to be rendered.
2021-02-09 08:21:49 +07:00
Vsevolod Kremianskii
249b8082af fix: Use special blending mode for particles
Use GL_SRC_ALPHA, GL_ONE when rendering normal particles. This is not ideal,
but at least it fixes weird transparency issues in the main menu.
2021-02-08 23:35:30 +07:00
Vsevolod Kremianskii
d37107deca refactor: Cleanup and refactor the scene graph 2021-02-08 23:35:30 +07:00
Vsevolod Kremianskii
d3ff68b6d7 feat: Depth textures are created with a stencil component 2021-02-08 21:24:57 +07:00
Vsevolod Kremianskii
a34c73e095 doc: Update modules diagram 2021-02-08 19:19:26 +07:00
Vsevolod Kremianskii
3f3fe8663e refactor: Merge libnet into libmp 2021-02-08 17:26:42 +07:00
Vsevolod Kremianskii
d748c82681 feat: Reimplement rendering GR2 skeletons 2021-02-08 09:19:47 +07:00
Vsevolod Kremianskii
4fa24a2842 refactor: Reimplement GR2 models and JBA animations
Still not working properly...
2021-02-08 02:05:19 +07:00
Vsevolod Kremianskii
ed1731c4b7 refactor: Move models(.h|.cpp) into model folder 2021-02-07 22:36:55 +07:00
Vsevolod Kremianskii
f9e54cbd10 refactor: Move libmp, libnet and libtor into experimental folder 2021-02-07 20:54:11 +07:00
Vsevolod Kremianskii
b90c1d9f4a refactor: Move TOR support code into a separate library 2021-02-07 20:45:10 +07:00
Vsevolod Kremianskii
a0fa2be9a3 feat: Update JbaFile to match the recent spec 2021-02-06 21:04:14 +07:00
Vsevolod Kremianskii
c23100b95e feat: Add partial support for SWTOR animations 2021-02-04 22:37:49 +07:00
Vsevolod Kremianskii
7e59bf32c7 feat: Implement reading attachments from GR2 models 2021-02-01 18:10:58 +07:00
Vsevolod Kremianskii
87a84285d0 feat: Improve support for GR2 materials 2021-02-01 12:56:16 +07:00