1126 Commits

Author SHA1 Message Date
yvt
4e9370e8b4
Fix forgetting to unlock a recursive_mutex before deleting 2019-05-26 00:55:54 +09:00
yvt
31a153e711 Add "ghost" rendering
This commit adds new model rendering options
`ModelRenderParam::{ghost, opacity}`.

> Specifies that the model is not an actual object in the virtual world, 
> thus does not affect the shading of other objects and does not appear
> in a mirror.
> ...
> In exchange, it allows the use of an opacity value other than `1`.
2019-05-25 18:56:41 +09:00
yvt
51af48e98b
GL: Support emissive material 2019-05-25 16:24:46 +09:00
yvt
f75f55f33d
FallingBlock: Use the default material ID for generated VoxelModels 2019-05-25 15:42:51 +09:00
yvt
7147e735b7
SW: Support emissive material 2019-05-25 15:39:49 +09:00
yvt
25e9ad0143
Remove a possible debugging assertion that falsely aborts the program 2019-05-25 15:24:01 +09:00
yvt
c910bd4846
Remove Mutex, replacing their uses with std::{mutex, recursive_mutex} 2019-05-25 15:00:32 +09:00
yvt
76908188ab
Fix indentation 2019-05-25 14:32:52 +09:00
yvt
5e0cb27a4d
Add VoxelModelLoader
This new loader allows additional transformation on voxel models, e.g.,
setting a new origin point and replacing the material ID of all voxels,
based on a metadata file placed next to KV6 files.
2019-05-25 14:29:14 +09:00
yvt
6a39343daa
Introduce the concept of voxel material ID 2019-05-25 13:19:48 +09:00
yvt
7524bb608c
Remove ModelRenderParam::unlit 2019-05-25 13:06:41 +09:00
yvt
c31dc01032
Fix where the check for param.castShadow is performed 2019-05-25 12:44:00 +09:00
yvt
2ae2288034
Documentate 2019-05-25 12:39:06 +09:00
yvt
44f5dff416
Coding style: Initialize fields using default member initializers 2019-05-25 12:30:27 +09:00
yvt
ece13a6118
Support ModelRenderParam::castShadow 2019-05-25 12:22:04 +09:00
yvt
b10c943eed
Harden the model custom color check 2019-05-25 12:18:32 +09:00
yvt
4ffd817056
Add ModelRenderParam::{castShadow, unlit} 2019-05-25 12:10:51 +09:00
YVT
53a7820ff8
Merge pull request #828 from NotAFile/extinfo-support
Add support for ExtInfo Packet
2019-05-20 00:23:23 +09:00
yvt
672c9b7718
Update comment style 2019-05-20 00:22:24 +09:00
yvt
6f59b7e3fd
clang-format 2019-05-20 00:18:56 +09:00
notafile
6e24902324 Remove accidental line, add comment 2019-05-19 17:07:57 +02:00
YVT
672edd9473
Merge pull request #831 from otzade/scoreboard-color
Highlight own name in scoreboard
2019-05-19 23:44:16 +09:00
NotAFile
a3e4810a18 Add support for ExtInfo Packet 2019-05-19 16:29:22 +02:00
YVT
d857ef88f1
Fix r_softParticles 2 not working 2019-05-19 23:19:48 +09:00
admiral general salam
cf3ba37b6e
Highlight own name in scoreboard 2019-05-19 17:06:53 +03:00
yvt
cf2ecb4342
Apply temporal smoothing on the progress bar 2019-05-19 17:20:50 +09:00
yvt
a17a8f7b16
Fix to build with GCC 4.9 2019-05-19 17:14:51 +09:00
yvt
720be50ff4
Show additional info (estimated remaining time, etc.) when loading map 2019-05-19 17:08:09 +09:00
yvt
bb51d1fe20
Fix to build with GCC 4.9 2019-05-19 16:51:27 +09:00
yvt
cd3304ef24
Display a progress bar when receiving a map
Replaces the old useless "num-bytes-loaded/16777216" message with a
real progress bar.
2019-05-19 16:25:39 +09:00
yvt
97ed5d46ad
Fix several small issues
- `GameMapLoader` did not start the decoding thread.
- `StreamHandle::operator=` caused SEGV for null handles.
- `PipeReader` prematurely stopped outputting data.
2019-05-19 16:13:21 +09:00
yvt
1a2287201d
Add GameMapLoader 2019-05-19 15:51:40 +09:00
yvt
10fc7da79d
Add StreamHandle::operator bool 2019-05-19 14:53:32 +09:00
yvt
a8b50e9a69
Add CreatePipeStream 2019-05-19 14:41:54 +09:00
yvt
94dbd30bb6
Add onProgress parameter to GameMap::Load 2019-05-19 13:50:07 +09:00
yvt
80972e1661 Reimplement GameMap::Load using RandomAccessAdaptor
It no longer reads all data from the input stream in advance, allowing
streamed parsing.
2019-05-19 13:26:29 +09:00
yvt
40037ecb34 Add RandomAccessAdaptor::Prefetch 2019-05-19 13:12:16 +09:00
yvt
1997fec9a6 Add SPADES_MARK_FUNCTION to RandomAccessAdaptor 2019-05-19 13:09:55 +09:00
yvt
c4caf4c630 Add RandomAccessAdaptor::Read 2019-05-19 13:08:38 +09:00
yvt
894d8fbec4 Add SPADES_MARK_FUNCTION to RandomAccessAdaptor 2019-05-19 13:05:32 +09:00
yvt
f19469f6fe clang-format 2019-05-19 13:03:35 +09:00
yvt
024c8aa7ce Fix "memcpy is not a member of std" 2019-05-19 01:08:51 +09:00
yvt
b9426fd438 Add RandomAccessAdapter
It will be used to aid the implementation of the improved map loader.
2019-05-19 00:58:32 +09:00
yvt
ac6bc01617 Make the movement of the flashlight non-rigid
Like the one in Metro 2033. Should have no negative effect on gameplay.
2019-05-05 23:32:57 +09:00
yvt
157219eb45 Remove a redundant include 2019-05-05 23:30:24 +09:00
yvt
6f47da8710 Change the type of DynamicLightParam::spotAxis to std::array 2019-05-05 23:29:51 +09:00
yvt
adc944a415 Use spotlight cone angle for D-light pass object culling
Lowers the GPU cost of spotlights.
2019-05-05 22:51:15 +09:00
yvt
7853329e6d Move GLDynamicLightShader::{Cull, SphereCull} to GLDynamicLight 2019-05-05 22:12:33 +09:00
YVT
e1abcf9c41
Merge pull request #825 from NotAFile/use-state-to-end-map-transfer
detect end of map transfer with state packet
2019-05-05 13:04:59 +09:00
NotAFile
49a4c0dd4f remove duplicate handling of VersionGet 2019-05-04 20:21:44 +02:00