Gered
9b9404724e
SpriteBatch's VBO and IBO are now created on the GPU
2013-04-03 12:30:24 -04:00
Gered
c5d4a3094c
fix not creating an index buffer on the GPU if a graphics device object is passed in, and ensure all Initialize() overloads call BufferObject's Initialize() as well
2013-04-03 12:30:01 -04:00
Gered
52d9989224
fix not creating a vertex buffer on the GPU if a graphics device object is passed
2013-04-03 12:29:05 -04:00
Gered
45579fdf7f
SpriteBatch now uses an index buffer for the sprites
2013-04-03 12:05:26 -04:00
Gered
65df1bcc74
clean up initialization a bit and use some better default sizing
2013-04-03 11:25:23 -04:00
Gered
66a8ee61d5
no magic numbers!
2013-04-03 11:23:59 -04:00
Gered
96c6958674
SpriteBatch now always grows by a set amount to reduce the number of times it needs to resize it's arrays
2013-04-03 11:21:06 -04:00
Gered
7b6f144f61
remove SpriteBatch's line/box rendering methods
...
These didn't really work consistently across all GPU's unless you
changed the shader when rendering any non-textured primitives. At which
point, I think that some kind of PrimitiveBatch type class would
probably be a better idea for line/box drawing.
2013-04-03 11:13:27 -04:00
Gered
b4033b9953
fix missing int/uint type changes
2013-04-02 19:41:13 -04:00
Gered
4ce9c3c53a
just use the built in bool type instead of a typedef around int32_t
...
I'd rather use this explicitly and then convert to a specific size data
type when the size of the variable really matters (which is rare)
2013-04-02 19:36:39 -04:00
Gered
ac3f30e3db
prefer using int/uint instead of always using int32_t/uint32_t/etc
...
I believe this was originally based on an overreaction on my part from
several years ago where I found some code I wrote did not work correctly
on 64-bit systems because I wasn't taking into account different type
sizes.
Use of int32_t, uint32_t, int16_t, uint16_t, etc should only be used
where the byte size of the variable is very important. For general
number variable usage, this is less important. e.g. using int or uint
for screen coordinates is fine. Using int16/uint16 for screen
coordinates also works, but is maybe a bit overkill and more to type
for little-to-no benefit.
2013-04-02 19:14:59 -04:00
Gered
863d01fce9
add typedefs for unsigned types (easier to type!)
2013-04-02 16:25:04 -04:00
Gered
2c432a0b1f
remove all uses of STACK_TRACE
2013-04-02 15:55:06 -04:00
Gered
39c8ee2a79
remove STACK_TRACE macro definition and supporting classes/functions
2013-04-02 14:26:33 -04:00
Gered
3993326711
add some doc comments to the type-system header
2013-04-02 14:01:32 -04:00
Gered
c9d9152e45
convert all instances of copy+pasted type-system code to use the new macros
2013-04-02 13:48:16 -04:00
Gered
2ae39ff14f
oops
2013-04-02 13:21:46 -04:00
Gered
f052171e41
add macros for easy adding of the basic type system in use for a number of systems
2013-04-02 13:18:23 -04:00
Gered
f71d7be30e
more minor cleanups
2013-04-02 12:39:31 -04:00
Gered
c18ed56011
some minor cleanups and new asserts
2013-04-02 12:14:09 -04:00
Gered
6de773f270
update all other uses of Image copy/create methods to use the new x,y,width,height arguments for specifying dimensions
2013-04-02 12:05:22 -04:00
Gered
0480bf5fea
switch Image copy methods to use x,y,width,height instead of left,top,right,bottom style arguments
2013-04-02 12:02:18 -04:00
Gered
c9cfceec39
shift GraphicsDevice's complex initialization to a new Initialize() method
2013-04-01 19:43:33 -04:00
Gered
07abad71c2
update GraphicsDevice's built-in shader properties. now initializes them only on first-access (lazy-load)
2013-04-01 19:32:46 -04:00
Gered
543e6bf409
update all shader subclasses to use Initialize() methods for all complex initialization instead of the constructor
2013-04-01 19:32:11 -04:00
Gered
6a5444abe0
shift Shader initialization from constructor to separate Initialize() methods, and update for GraphicsContextResource changes
2013-04-01 19:31:16 -04:00
Gered
34bcbfaec9
don't attempt to restore managed resources in GraphicsDevice::OnNewContext() if it's the first run (e.g. when things are guaranteed to be loaded already)
2013-04-01 19:21:07 -04:00
Gered
7f032498d7
add missing Release() call
2013-04-01 18:31:39 -04:00
Gered
98ff932880
minor swap of order of validation checks
2013-04-01 18:02:14 -04:00
Gered
c8b2f73d9a
update Renderbuffer with GraphicsContextResource changes
2013-04-01 18:00:49 -04:00
Gered
decbe56cd0
update Framebuffer with the GraphicsContextResource changes. also fixed a few small issues with how it handled new/lost contexts and restored itself
2013-04-01 17:51:58 -04:00
Gered
e5f17c1786
add checks to help prevent duplicate initialization of GraphicsContextResource
2013-04-01 17:45:40 -04:00
Gered
bd5f43c5a1
add if-check for the graphics device object passed to GraphicsContextResource::Initialize() so it can fail gracefully instead of just relying on the assert
2013-04-01 17:42:15 -04:00
Gered
4db24ae39a
update all uses of VertexBuffer, IndexBuffer and VERTEX_ATTRIBS to compile and run under the new changes
2013-04-01 17:38:46 -04:00
Gered
9f42c16c93
add Release() method to handle resource/mem freeing instead of doing it only in the destructor (the destructor in these classes just calls Release() now)
2013-04-01 17:37:56 -04:00
Gered
d8c19411ec
add missing return
2013-04-01 17:23:11 -04:00
Gered
ee9928ad79
updated IndexBuffer to use Initialize() methods instead of doing it all in the constructor
2013-04-01 17:14:32 -04:00
Gered
2ec3ed3673
update VertexBuffer to use Initialize() methods to setup itself instead of the constructor. vertex attributes are now passed as an array instead of using "Add" methods
2013-04-01 17:14:05 -04:00
Gered
a20bc14b71
update VERTEX_ATTRIBS, merging type and size enums into one
2013-04-01 14:17:04 -04:00
Gered
9d77f6b197
change BufferObject and GraphicsContextResource to use a simple "do-nothing" constructor, and do all important initialization in a separate method with a return value
2013-04-01 14:08:37 -04:00
Gered
75d827ac7c
update BufferObject to provide support for new GraphicsContextResource support
2013-04-01 13:21:20 -04:00
Gered
183631c5e6
expand GraphicsContextResource to self-register itself with GraphicsDevice
2013-04-01 13:12:48 -04:00
Gered
b0db10f77a
fix incorrect glBindBuffer argument
2013-04-01 11:41:21 -04:00
Gered
dc9344f09b
make the "generate" shell scripts executable
...
on windows, should use the "git config core.filemode false"
2013-02-09 11:53:09 -05:00
Gered
18ff020233
fix a couple warnings about incorrect return types
2013-02-09 11:47:48 -05:00
Gered
3760771634
update ignore filters with new binary name & also catch mac app bundles
2013-02-09 11:47:34 -05:00
Gered
8254693b1e
change project/solution name (matches repo name)
2013-02-09 11:46:48 -05:00
Gered
3095735268
fix error about concatenating a nil value
...
guess the "vs*" config is evaluated even if we aren't building for it...
2013-02-09 11:40:04 -05:00
Gered
6e90860293
add basic version of 3d tilemap sources
2013-01-31 13:07:46 -05:00
Gered
ad3dd47192
add README
2013-01-31 13:00:09 -05:00