Commit graph

144 commits

Author SHA1 Message Date
Gered a1f3a737b8 add TilePrefab 2013-07-22 19:08:51 -04:00
Gered 9ba2a0a142 bit of refactoring with the TileMapLighter classes 2013-07-22 18:25:06 -04:00
Gered 2cc12276f0 little bit of code reorganizing 2013-07-21 22:33:48 -04:00
Gered 57b028426a add tile mesh count getter 2013-07-21 22:23:25 -04:00
Gered 2adcc2089b it's annoying to have to put stupid casts when passing in constant numbers (which are ints or longs or something in Java ...) 2013-07-21 21:33:34 -04:00
Gered 3bbacd07dc implement overall scaling/offseting for the combined mesh in MultiModelTileMesh 2013-07-21 19:31:23 -04:00
Gered fe1209f039 add TileMeshCollection/Loader support for MultiModelTileMesh 2013-07-21 18:32:46 -04:00
Gered bc92ab0681 add MultiModelTileMesh 2013-07-21 18:32:24 -04:00
Gered 2140924e62 update ModelTileMesh to use the new base class 2013-07-21 17:24:56 -04:00
Gered 0c192bdbd0 sub models won't have collision position offsets 2013-07-21 17:24:35 -04:00
Gered a177c4573b remove unused ModelTileMesh constructor and associated TileMeshCollection.add overload 2013-07-21 17:24:20 -04:00
Gered 37c744d82f add abstract base class to be used for TileMesh's that work with Model objects 2013-07-21 17:23:27 -04:00
Gered d3bacd32a9 add json config support for tile definitions using submodels 2013-07-21 16:14:53 -04:00
Gered 0482491c2a fix (with bad hacks!) some lighting issues. rewrite some comments
One of these fixes unfortunately removes the "free" smooth lighting from
before, but that was actually mostly the result of a side-effect from a
bug in the way we checked for light-source tiles. And it wasn't really
fully correct smooth lighting anyway.
2013-07-21 13:13:37 -04:00
Gered 1a18049b27 add initial version of LitChunkVertexGenerator 2013-07-21 09:53:23 -04:00
Gered bca0d97346 pass current Tile object into addMesh 2013-07-21 09:53:04 -04:00
Gered e24c9c6ec6 TileMesh translucency is now a percent to remove from the tile light value
I guess this kind of makes it "opaqueness" instead of "translucency"
2013-07-21 09:52:33 -04:00
Gered 70ccaedb0a should only be applying rotation and scaling when transforming a normal 2013-07-21 08:49:38 -04:00
Gered 36f319a881 combine addMesh and copyVertex. we weren't gaining anything with them separate 2013-07-20 23:00:38 -04:00
Gered 6bfbf66c4c change "default value" (null) handling of ModelTileMesh scaling/position adjustments 2013-07-20 19:28:43 -04:00
Gered 0c3abf574f add TileMap saving 2013-07-18 20:16:59 -04:00
Gered 5234c732af add mostly-untested TileMap loading via json / Base64 deserialization 2013-07-18 19:52:18 -04:00
Gered 22172f8b48 add POJO for tilemap json data 2013-07-18 19:21:28 -04:00
Gered f02b511949 add Tile/TileChunk serialization helpers 2013-07-18 19:18:35 -04:00
Gered a8cec9b065 move TileMeshCollection json loading code out to a separate static helper method/class 2013-07-18 18:44:36 -04:00
Gered 26b3a2a6c5 make non-public methods protected (upcoming LitChunkVertexGenerator needs this) 2013-07-18 18:17:56 -04:00
Gered 6f59f4b095 use Vertices built in "current position" tracking while copying mesh vertices 2013-07-18 18:16:59 -04:00
Gered 6f262f9f21 move TileMapLighter and subclasses to a separate package 2013-07-18 18:02:28 -04:00
Gered 1d353977a1 update with TextureAtlas package changes 2013-07-18 17:54:26 -04:00
Gered 6dd88d2c1f make total size of Tile member fields a power of 2 2013-07-17 23:48:12 -04:00
Gered 0d44e5c71d set blending material attribute to tile chunk alpha meshes 2013-07-17 23:40:38 -04:00
Gered 657d274f93 add json config support for cube tile meshes 2013-07-17 23:39:56 -04:00
Gered 4dd2724b47 add initial support for initializing TileMeshCollection from a json config 2013-07-17 22:48:23 -04:00
Gered 76e2cfe043 move tile mesh related classes into the new package 2013-07-17 19:27:26 -04:00
Gered 35157d5abf add POJOs for json deserialization of TileMeshCollection data 2013-07-17 19:23:59 -04:00
Gered 8b2c7452fa add a bounding volume to TileChunkMesh and check this against the frustum when rendering
This is to ensure that we still render chunks when they contain tile
meshes which may be bigger then the 1x1x1 unit size and could then
potentially cause the chunk mesh bounds to be larger then the chunk
tile grid bounds.
2013-07-16 18:35:06 -04:00
Gered 211a76dfc2 use MaterialTileMapping instead of Maps 2013-07-16 18:15:02 -04:00
Gered fb97c92e7b add MaterialTileMapping to aid in setting some texture -> atlas tile conversion properties 2013-07-16 18:14:33 -04:00
Gered db91dcbff0 "fix" incorrectly using Color property in ModelTileMesh 2013-07-16 18:14:00 -04:00
Gered 882264ba44 fix up ModelTileMesh so it is easier to use with loaded Models. add bounding volume field to TileMesh 2013-07-16 15:37:58 -04:00
Gered 4a881184fb TileMesh now uses completely "client-side" storage of vertex data
Since TileMesh objects are not rendered directly, using a Mesh object
to store their vertices is a bit of a waste since on GL 2.0+ libgdx
uses a VBO for each Mesh
2013-07-16 11:10:40 -04:00
Gered 382da2985f initial commit
This is a _mostly_ working port of my original C++ code. Some parts
aren't too optimized yet and some stuff may actually not work. But it's
_mostly_ there. :)
2013-07-15 19:13:30 -04:00
Gered 913ec916ce output path 2013-07-01 12:15:04 -04:00
Gered b0ffe46e29 initial commit 2013-07-01 12:13:23 -04:00