48425d5cb8
Tests for breadth first search
2018-11-10 12:47:04 -05:00
8d6c48466b
Remove all the explicit type names from the tests
2018-11-10 10:40:44 -05:00
25abb91476
Move BFS stuff to use the new helper method
2018-11-10 10:40:29 -05:00
cd48797fa9
Fix the build; test box subdivisions
2018-11-10 10:30:07 -05:00
8e2a873edf
Move shader files to Shaders group
2018-11-10 09:54:17 -05:00
cce59a45dc
Get down an initial diamond-squares implementation
2018-11-10 09:53:37 -05:00
a390cbc584
Add unit test target for Terrain2
2018-11-08 20:19:31 -05:00
7343f0a83a
Wrap algorithm iteration flag in a semaphore
2018-11-07 17:11:30 -05:00
1a5ed92c14
Regeneration on ever 'n' now, but it gets scheduled on every frame in that semaphore group
2018-11-07 17:05:28 -05:00
11b9cba8ac
Add a Uniform object for RandomAlgorithm
...
This object contains several random numbers for the GPU kernel to use when generating random points. This isn't right yet (there are still patterns in the generated data) but it's time to move on...
2018-11-07 16:47:07 -05:00
76f0065d8b
Generate some pseudo-random numbers with a PRNG class in the shaders.
2018-11-04 22:30:06 -05:00
bd9cba2886
Get rid of an unused static let
2018-11-04 14:26:15 -05:00
8ffb0a1cfe
Generate terrain on a keypress
2018-11-04 14:19:02 -05:00
55a134882d
Proof of concept for Algorithm objects
...
Next up compute kernel dispatch!
2018-11-04 13:44:47 -05:00
96730ecd41
Use a fixed size 512x512 texture for the height map
...
This will make implementing other algorithms easier. :D
2018-11-04 11:34:25 -05:00
af5e5a6123
Generate some random heights to fill the height map texture and ... it works!
2018-11-04 08:25:01 -05:00
18e9d078b0
TODO
2018-11-04 08:07:17 -05:00
4803620d4b
Read texture data from the heights texture
2018-11-04 08:06:48 -05:00
753e8eb311
Give the grid coordinate vertex attribute a nice name
2018-11-03 16:35:46 -04:00
d4d4a0a7ba
Attach height texture to vertex shader
2018-11-03 16:35:23 -04:00
a5d08d6974
Over-zealous multiline edit
2018-11-03 16:26:55 -04:00
f1517a2166
Rename an unnecessarily long variable
2018-11-03 16:25:57 -04:00
dac8f24568
Add grid coordinate argument encoding stuff and a texture to hold heights
2018-11-03 16:25:19 -04:00
a5c86f9c31
Doc comments!
2018-11-03 16:02:35 -04:00
5fa89d1e47
Extract Terrain into its own class
2018-11-03 15:59:11 -04:00
ee2431d9c4
Fix Terrain2's build
2018-11-03 15:44:10 -04:00
bf6cd3ca15
Take another stab at getting Terrain to render, but no :(
2018-11-03 15:44:02 -04:00
dc179036dc
Render a plane in Terrain2 instead of a box
2018-11-03 15:43:47 -04:00
a771c2622a
Create Terrain2 app, using Xcode's boilerplate
2018-11-03 15:15:03 -04:00
df0a4ca6fc
Explicitly link Metal and MetalKit
2018-11-03 15:08:01 -04:00
a311423cb1
Strip down shaders to their most basic forms
2018-11-03 15:07:32 -04:00
dff9e5d3bf
Terrain grid goes between -1 and 1
2018-11-03 15:07:21 -04:00
49783610e7
In the name of debugging, use a smaller grid and make more local vars
2018-11-03 15:07:03 -04:00
3ce38b4b8b
Move all Metal setup to the Renderer
2018-11-03 15:06:30 -04:00
e18a956875
Create the TerrainVC in the xib
2018-11-03 15:05:27 -04:00
35ed423144
Remove alpha render attachment stuff
2018-11-03 14:23:45 -04:00
67134c157b
Get all the pieces together
...
Still doesn't render though. :\
2018-11-03 14:01:34 -04:00
8a664fff70
Pass the device around
2018-11-03 10:50:43 -04:00
2361199267
Add Terrain class that generates terrain
2018-11-03 10:45:57 -04:00
31f2258ec3
Remove CGSize extension that uses nonexistent Size
2018-11-03 10:45:44 -04:00
bb9507e3ec
Create a Renderer and copy over the Math library
2018-11-03 10:16:22 -04:00
75f23a94a4
Set up a TerrainViewController with an MTKView
2018-11-03 09:55:46 -04:00
28caab9052
Initial Commit
2018-11-03 09:43:38 -04:00