Vsevolod Kremianskii
14669e5e9e
refactor: Refactor fragment shaders, optimize dynamic lighting
...
- Cache lights per model scene node
- Limit fragment color by the texture color
- Enable dynamic lighting in all shaders
- Reuse common fragment shader code
- Account for light multiplier and attenuation
2020-09-22 10:36:38 +07:00
Vsevolod Kremianskii
f8488ee537
fix: Fix TSL animation problems after refactoring
2020-09-21 13:39:08 +07:00
Vsevolod Kremianskii
025145588d
feat: Improve dynamic lighting
...
- Increase max light count to 8
- Sort by priority first, then by distance to light
2020-09-21 08:19:58 +07:00
Vsevolod Kremianskii
c6f2ee69a8
feat: Initial dynamic light implementation
2020-09-20 23:20:17 +07:00
Vsevolod Kremianskii
edbad211d9
doc: Restructure readme file
...
[ci skip]
2020-09-20 19:30:00 +07:00
Vsevolod Kremianskii
68730a4d7a
doc: Add Similar Projects section to the readme file
2020-09-20 17:06:17 +07:00
Vsevolod Kremianskii
14d9975dc4
feat: Use VIS file to hide invisible rooms and objects
2020-09-20 13:15:11 +07:00
Vsevolod Kremianskii
597a126699
refactor: Cleanup, minor refactoring
2020-09-20 09:58:18 +07:00
Vsevolod Kremianskii
a18d7d15c1
build: Fix build of tools
2020-09-19 08:10:46 +07:00
Vsevolod Kremianskii
d2e5c2b5d5
chore: Remove unused includes
2020-09-19 08:05:53 +07:00
Vsevolod Kremianskii
e37ada215c
refactor: Extract debug level management into a separate file
2020-09-19 08:01:11 +07:00
Vsevolod Kremianskii
e69621e07b
fix: Fix Clang compilation
2020-09-19 07:49:09 +07:00
Vsevolod Kremianskii
0d50e1e07d
refactor: Optimize scene graph rendering
...
Create mesh scene nodes once per model scene node
2020-09-18 23:31:02 +07:00
Vsevolod Kremianskii
f1ee974e72
refactor: Rename ModelInstance to ModelSceneNode
2020-09-16 13:39:58 +07:00
Vsevolod Kremianskii
c35ab726ad
feat: Implement FPS counter
2020-09-16 08:48:39 +07:00
Vsevolod Kremianskii
430a37263f
refactor: Rename ModelSceneNode to MeshSceneNode
2020-09-15 22:23:26 +07:00
Vsevolod Kremianskii
06051bd3ab
refactor: Group MDL model classes into model folder
2020-08-27 08:40:51 +07:00
Vsevolod Kremianskii
05be195132
refactor: Remove excessive calls to initGL
...
Initialize GL resources at load.
2020-08-27 08:25:05 +07:00
Vsevolod Kremianskii
f26ed703fc
refactor: Extract object management from Area into ObjectContainer
...
Also optimize searching objects by tag and id.
2020-08-27 07:57:52 +07:00
Vsevolod Kremianskii
06c9ec0513
refactor: Refactor area rendering
...
- Change render list to scene graph
- Sort only transparent nodes
2020-08-27 00:01:21 +07:00
Vsevolod Kremianskii
e231833bf2
refactor: Refactor items
...
- Rename Item to ItemTemplate
- Add Item game object
2020-08-26 20:00:56 +07:00
Vsevolod Kremianskii
bfc350bbbd
chore: Fix Clang compilation issues
2020-08-26 18:36:01 +07:00
Vsevolod Kremianskii
8890a1bd82
refactor: Refactor game objects
...
- Split Object class into Object and SpatialObject
- Inherit Module and Area from Object
- Move object creation into (Multiplayer)ObjectFactory class
2020-08-26 18:21:57 +07:00
Luis Cáceres
c34eba71d0
chore: Accept moved or copied Action in Creature::enqueueAction
...
Callers of Creature::enqueueAction (such as some methods in game/script/routines_common.cpp) often try to perform a move, but since the old Creature::enqueueAction accepted only a const ref, it ended up copying instead of moving.
This fixes that, and allows for both copies and moves into Creature::enqueueAction.
2020-08-26 18:05:25 +07:00
Luis Cáceres
7bd4b3e161
fix: Missing include <atomic>
2020-08-26 17:00:42 +07:00
Vsevolod Kremianskii
9e97335433
style: Use raw string literals for shaders
2020-08-24 09:40:35 +07:00
Vsevolod Kremianskii
78a16fda22
feat: Load light properties from MDL file
2020-08-24 08:32:53 +07:00
Vsevolod Kremianskii
f6ccbb75d1
fix: Fix rancor/hutt transparency issues
2020-08-23 22:27:28 +07:00
Vsevolod Kremianskii
13fb08e3b5
fix: Fix animation scaling (c_rancors)
2020-08-23 22:05:17 +07:00
Vsevolod Kremianskii
fbf49399f5
feat: Partially implement item containers
2020-08-23 21:02:59 +07:00
Vsevolod Kremianskii
2fdd2b203d
feat: Implement 3D controls
2020-08-23 16:26:35 +07:00
Vsevolod Kremianskii
593284f108
feat: Load cursors from executable file
2020-08-18 16:37:24 +07:00
Vsevolod Kremianskii
1f23e8301e
feat: Implement dialog synchronization in multiplayer
2020-08-16 23:47:17 +07:00
Vsevolod Kremianskii
64b8ad60fd
refactor: Refactor multiplayer, optimize message exchange
2020-08-16 20:29:51 +07:00
Vsevolod Kremianskii
2e73eca295
chore: Log TCP events with debug level 2 and 3
2020-08-16 11:33:08 +07:00
Vsevolod Kremianskii
b2cfe9322a
chore: Do not load main menu in client mode
2020-08-16 11:31:26 +07:00
Vsevolod Kremianskii
8f388b7939
feat: Make Carth/Bastila and Atton/Kreia the default party
2020-08-16 10:18:35 +07:00
Vsevolod Kremianskii
1906b20b7a
feat: Play head talk animation at 25% speed
2020-08-16 09:58:57 +07:00
Vsevolod Kremianskii
c81b14ff20
fix(game): Fix talk animation not playing after moving
2020-08-16 09:37:38 +07:00
Vsevolod Kremianskii
2f1a839377
feat: Implement searching for nth object by tag
2020-08-15 11:41:01 +07:00
Vsevolod Kremianskii
78db64d5bc
feat: Play separate talk animation for head and body
2020-08-15 11:41:01 +07:00
Vsevolod Kremianskii
6aac395452
feat: Implement cursor rendering
2020-08-14 14:37:24 +07:00
Vsevolod Kremianskii
65e1b7006f
chore: Do not add QueueEmpty action to creatures
2020-08-14 12:39:26 +07:00
Vsevolod Kremianskii
289ed25a57
feat: Play music during main menu and chargen
2020-08-14 12:30:20 +07:00
Vsevolod Kremianskii
cfd689e4b5
feat: Show gender and class description during class selection
2020-08-14 11:21:01 +07:00
Vsevolod Kremianskii
aa4f9224ad
refactor: Split Area definition into multiple files
2020-08-14 09:46:34 +07:00
Vsevolod Kremianskii
e5163aa787
feat: Add script actions to the action queue
2020-08-14 09:08:34 +07:00
Vsevolod Kremianskii
e7de31ffa5
fix(game): Use object id instead of tag for dialog speakers
2020-08-12 10:02:57 +07:00
Vsevolod Kremianskii
eb3eb08de0
feat: Implement dialog reply selection using numeric keys
2020-08-12 08:52:55 +07:00
Vsevolod Kremianskii
90687ac5fd
fix(game): Remove restrictions from local booleans/numbers
2020-08-12 08:34:51 +07:00