ebiten/internal
seebs 74e204d952 graphics: Speed up DrawTriangles (#723)
DrawTriangles is expensive and slow because of massive memory
allocation and garbage collection costs. This patch moves from ~47TPS
on my laptop (with ~24k triangles) to 60TPS. The first part
is just allocating the right size of vertex buffer up front; that
got to about 55TPS. The second part replaces the frequent
allocations of []float32 in Vertex() calls with writing the
desired values into a provided destination slice.

Time spent in drawing triangles for 1,000 frames:
	13.07s	baseline
	11.09s	preallocate whole buffer to avoid resizing
	6.13s	use new PutVertex function

This might need some cleanup, but I think it's good evidence that
the design change is viable.
2018-10-31 10:53:17 +09:00
..
affine graphics: Embed 'scale' part of the color matrix 2018-08-10 23:20:55 +09:00
clock clock: Bug fix: function registerd OnStart might not be called 2018-09-03 00:35:55 +09:00
devicescale devicescale: Plan 9 support 2018-10-13 04:08:40 +09:00
graphics graphics: Speed up DrawTriangles (#723) 2018-10-31 10:53:17 +09:00
graphicscommand opengl: Unexport (Element)ArrayBufferSubData 2018-10-31 00:59:44 +09:00
hooks audio: More intellegent suspending/resuming (#617) 2018-05-26 23:31:04 +09:00
input input: Bug fix: wheel direction is opposite on browsers 2018-09-30 17:14:52 +09:00
math graphics: Refactoring: Move adjustment logic for glClearColor to opengl package 2017-12-03 03:51:42 +09:00
opengl opengl: Unexport (Element)ArrayBufferSubData 2018-10-31 00:59:44 +09:00
packing packing: Improve panic messages 2018-07-22 05:29:02 +09:00
png internal/png: Update 2018-09-02 23:09:08 +09:00
restorable restorable: Avoid memory allocating when an entire image is cleared 2018-10-30 11:08:38 +09:00
shareable graphics: Speed up DrawTriangles (#723) 2018-10-31 10:53:17 +09:00
testflock testflock: Use just sync.Mutex on browsers (#615) 2018-05-19 21:10:34 +09:00
ui ui: Refactoring 2018-10-14 18:28:27 +09:00
web Use new GopherWasm API (#634) 2018-06-30 00:02:15 +09:00