45 Commits

Author SHA1 Message Date
UnknownShadow200
f17fb36f06 Last few fixes 2018-04-01 21:50:41 +10:00
UnknownShadow200
c179f0262b fix some stuff 2018-04-01 15:23:13 +10:00
UnknownShadow200
76d2196464 fix maxx/maxy/maxz not being reset after world reset 2018-03-31 15:29:46 +11:00
UnknownShadow200
36f2dec36e Optimise ShadowComponent rendering 2018-03-27 17:58:13 +11:00
UnknownShadow200
8150ff22ff Fix some things to actually work 2018-03-25 11:23:53 +11:00
UnknownShadow200
9473646252 Majorly optimise block culling calculations 2018-03-20 21:52:47 +11:00
UnknownShadow200
30937e92f5 little bit less hardcoding 2018-03-20 16:54:48 +11:00
UnknownShadow200
68b861f6c8 little bit less hardcoding 2018-03-19 22:07:26 +11:00
UnknownShadow200
865b72db72 very minorly optimise BlockInfo.CalcCulling 2018-03-14 22:06:03 +11:00
UnknownShadow200
b04ff7333c Finish support for 10 bit blocks 2018-03-08 10:43:31 +11:00
UnknownShadow200
bc90eb9d52 Fix external plugins changing game.Graphics causing issues 2018-03-04 19:44:03 +11:00
UnknownShadow200
b432ae6a81 Fix rare crashing on some 10 year old GPUs with Direct3D9 2017-12-17 09:23:38 +11:00
UnknownShadow200
b2cacf6dc0 Fix incorrect rendering when chunk had over 65,536 vertices. (Thanks Empy) 2017-12-07 19:24:53 +11:00
UnknownShadow200
9dd16baf47 ChunkPartInfo is now 12 bytes less in size 2017-09-13 14:20:11 +10:00
UnknownShadow200
c23ba90c1f Make BlockInfo class static and break all plugins in the process. 2017-08-14 09:33:21 +10:00
UnknownShadow200
3d01dbab20 Remove unused code 2017-06-25 20:32:42 +10:00
UnknownShadow200
ac276d3611 Remove generic CreateVb<T>, force everyone to use raw pointers 2017-06-11 22:45:41 +10:00
UnknownShadow200
bc58cb6f93 Mostly port mesh builder to C. 2017-06-08 11:16:52 +10:00
UnknownShadow200
59f3c0bc5c Port TileDrawer to C. 2017-06-07 16:51:32 +10:00
UnknownShadow200
9a2c115af3 Port MapBordersRenderer to C. 2017-05-31 10:09:00 +10:00
UnknownShadow200
c9167859fb Compare light colour instead of isLit, allows for custom lighting implementations. 2017-02-25 19:41:40 +11:00
UnknownShadow200
7bd365afba microoptimisation for chunk mesh building 2017-02-23 23:30:54 +11:00
UnknownShadow200
2738713a83 Skip inside faces for all opaque blocks, even those that are not a full solid block. 2017-02-21 08:27:09 +11:00
UnknownShadow200
005d0cebe2 For the 0-1 people who bother, make 12 bit block ids as easy as a compile time switch. 2017-02-19 22:29:07 +11:00
UnknownShadow200
b6df7d9732 Don't pointlessly recreate all air chunks 2017-02-19 11:40:35 +11:00
UnknownShadow200
cf06302e33 Fix leftover issues 2017-02-16 16:42:50 +11:00
UnknownShadow200
c92ebcac6c Use BlockID typedef instead of hardcoding byte everywhere.
In the 0.00001% chance someone changes blockid to be 16 bits
2017-02-16 16:31:17 +11:00
UnknownShadow200
69dd8af17c reduce code duplication 2017-02-07 15:19:06 +11:00
UnknownShadow200
98d435b110 fix licensing 2017-01-20 09:12:04 +11:00
UnknownShadow200
e33d39685c Style: Make more code available to external plugins. 2016-12-03 19:26:38 +11:00
UnknownShadow200
dddc9954b7 Client: start work on loading external plugins 2016-12-03 17:44:45 +11:00
UnknownShadow200
75f0a73841 Style: Indent catch and switch properly. 2016-12-02 15:31:34 +11:00
UnknownShadow200
2986773b51 Abstract block lighting 2016-11-29 21:01:18 +11:00
UnknownShadow200
1aef52fab2 Use standard indentation for everything. 2016-11-27 14:47:09 +11:00
UnknownShadow200
2fa379746a Style: Finish simplifying BlockInfo 2016-10-29 13:49:33 +11:00
UnknownShadow200
2452cc93a7 Style: Use gfx consistently everywhere, instead of mixing api and graphics. 2016-10-12 12:25:12 +11:00
UnknownShadow200
b576506b86 Gfx: add bool indicating whether texture should use managed or default pool. 2016-10-06 10:54:17 +11:00
UnknownShadow200
67f98eb825 Client: Don't show water/lava on vertical bit of borders (thanks tornato). Also offset horizon blocks properly. 2016-09-15 15:11:27 +10:00
UnknownShadow200
f399c838f2 Client: Keep track of edge level in mesh builder. 2016-09-15 10:56:32 +10:00
UnknownShadow200
a86d1233d0 Implement greedy meshing for advanced lighting backend.
Note this not 100% optimal, as it does not cover the case of a row of quads in half shadow (one side in shadow, other in sunlight). However, it performs greedy meshing when blocks are either fully in shadow or sunlight so this is much more optimal than before.
2016-07-12 22:31:19 +10:00
UnknownShadow200
d8fa0aeb1f Slightly fix smooth lighting. 2016-07-12 14:38:16 +10:00
UnknownShadow200
d886909889 First pass on redesigned smooth lighting code. Still a major WIP. 2016-07-10 20:53:24 +10:00
UnknownShadow200
f39f83cd22 Start work on modularising mesh builder class, so we can support both normal and smooth lighting backends. 2016-07-09 15:30:39 +10:00
Goodlyay
06657bbdf1 Add light smoothing to top and side faces of blocks. 2016-07-08 20:15:14 -07:00
UnknownShadow200
118f134b8f Implement top-face water culling like classic. 2016-07-07 17:42:26 +10:00