http://www.miikahweb.com/feed.php MiikaHweb - Blender GPU_data_request Branch http://www.miikahweb.com/ MiikaHweb - Blender GPU_data_request Branch fi Sun, 25 Aug 19 12:20:43 +0000 MiikaHweb RSS contact at miikahweb.com <![CDATA[[bcf1626]: cleanup: GPUBufferCopyFunc defined twice]]> http://www.miikahweb.com/en/blender/git-logs/commit/bcf1626934f26578d0a3066c83a5e66e9d821bf5 bcf1626
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
cleanup: GPUBufferCopyFunc defined twice

----------------------------------------
1 Path Changed]]>
Thu, 14 May 2015 17:17:12 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/bcf1626934f26578d0a3066c83a5e66e9d821bf5Mike Erwin
<![CDATA[[8e08b34]: clean up GPUx vertex buffer API (part 1)]]> http://www.miikahweb.com/en/blender/git-logs/commit/8e08b34061919f1435ffa26b4888cf0370f778ce 8e08b34
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
clean up GPUx vertex buffer API (part 1)

Removed unprimed version of GPUx_vertex_buffer_use function. The new
pattern is create, fill, prime, use {draw} done_using, use {draw}
done_using ...

Renamed GPUx_vertex_buffer_use_primed to GPUx_vertex_buffer_use since
there's only one version now.

Also removed the _primed suffix from GPUx_element_list_use.

TODO: make a wiki page about how to use this API

----------------------------------------
5 Paths Changed]]>
Thu, 14 May 2015 06:57:40 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/8e08b34061919f1435ffa26b4888cf0370f778ceMike Erwin
<![CDATA[[d58765c]: fix mismatched memory free]]> http://www.miikahweb.com/en/blender/git-logs/commit/d58765ccb312690429ce5449a5fc264583838313 d58765c
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
fix mismatched memory free

This string is copied with strdup during GPUx_specify_attrib, needs a
plain free.

----------------------------------------
1 Path Changed]]>
Thu, 14 May 2015 04:38:10 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/d58765ccb312690429ce5449a5fc264583838313Mike Erwin
<![CDATA[[25e492e]: new function: bind all attrib locations]]> http://www.miikahweb.com/en/blender/git-logs/commit/25e492edaa2cb57999ed229534a36fbeb841cf14 25e492e
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
new function: bind all attrib locations

Was binding these by hand in wireframe shader tests, but retyping the
name strings is a potential source of errors. Call this function instead
after creating VertexBuffer but before linking the GLSL program.

----------------------------------------
2 Paths Changed]]>
Thu, 14 May 2015 03:57:03 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/25e492edaa2cb57999ed229534a36fbeb841cf14Mike Erwin
<![CDATA[[eb42cbf]: Revert "Add missing stubs for buffer generation."]]> http://www.miikahweb.com/en/blender/git-logs/commit/eb42cbf273555a92219927089a979f91afc6d037 eb42cbf
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
Revert "Add missing stubs for buffer generation."

This reverts commit 4040f0af0017409fad4912605527900ba6919173.

----------------------------------------
1 Path Changed]]>
Tue, 12 May 2015 21:16:50 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/eb42cbf273555a92219927089a979f91afc6d037Mike Erwin
<![CDATA[[247a165]: Merge branch 'master' into GPU_data_request]]> http://www.miikahweb.com/en/blender/git-logs/commit/247a1659faaee76a7259a16bd845cf103189950a 247a165
Branches : GPU_data_request
Author : Antony Riakiotakis (psy-fi)
----------------------------------------
Merge branch 'master' into GPU_data_request

----------------------------------------
0 Paths Changed]]>
Mon, 11 May 2015 09:09:04 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/247a1659faaee76a7259a16bd845cf103189950aAntony Riakiotakis
<![CDATA[[4040f0a]: Add missing stubs for buffer generation.]]> http://www.miikahweb.com/en/blender/git-logs/commit/4040f0af0017409fad4912605527900ba6919173 4040f0a
Branches : GPU_data_request
Author : Antony Riakiotakis (psy-fi)
----------------------------------------
Add missing stubs for buffer generation.

----------------------------------------
1 Path Changed]]>
Mon, 11 May 2015 09:08:40 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/4040f0af0017409fad4912605527900ba6919173Antony Riakiotakis
<![CDATA[[95ca1ed]: Compilation fixes for C90 - still getting link errors related...]]> http://www.miikahweb.com/en/blender/git-logs/commit/95ca1ed75d8586985a4076e67b496fc519473016 95ca1ed
Branches : GPU_data_request
Author : Antony Riakiotakis (psy-fi)
----------------------------------------
Compilation fixes for C90 - still getting link errors related to buffer
generation routines.

----------------------------------------
1 Path Changed]]>
Mon, 11 May 2015 09:04:19 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/95ca1ed75d8586985a4076e67b496fc519473016Antony Riakiotakis
<![CDATA[[b733d44]: WIP: fancy wireframe display]]> http://www.miikahweb.com/en/blender/git-logs/commit/b733d44f04bd69e64ae9dec4c3fec282d08cb5bb b733d44
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
WIP: fancy wireframe display

Exploring some possibilities with wireframe rendering beyond solid
color.

New effect: color edges based on angle between the faces joined. Loose
edges, perimeter edges, and edges joining 3+ faces are colored
differently.

Some of this code will move to Workflow Shaders. Other parts will move
to DerivedMesh data requests ‚?? AdjacentFaces (struct) and/or angle made
by adjacent faces (float).

The (incomplete) shader version uses VertexBuffer‚??s generic attribute
API, which we want to switch everything to eventually. There is a GLSL
vertex shader *not* included in this commit because I don‚??t know where
to put it‚?¶

The CPU version is temporary ‚?? it‚??s equivalent to the shader setup +
matching GLSL shader.

This particular effect is view independent, so can be done CPU-side
once and drawn many times. Other effects I‚??m working on are view
dependent, so really need the setup + shader split.

----------------------------------------
1 Path Changed]]>
Tue, 28 Apr 2015 23:45:58 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/b733d44f04bd69e64ae9dec4c3fec282d08cb5bbMike Erwin
<![CDATA[[09076e4]: check extensions before use in GPUx]]> http://www.miikahweb.com/en/blender/git-logs/commit/09076e4f99f2039029e0037067080cf02235310c 09076e4
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
check extensions before use in GPUx

Using VAOs and integer vertex attributes.

VBO support is *not* checked because it‚??s guaranteed to be there in a
GL 2.1 context.

VAOs are not part of GL 2.1, but enjoy nearly universal support.

gpu_shader4 is widely supported on recent hardware, not always on older
HW.

----------------------------------------
1 Path Changed]]>
Mon, 27 Apr 2015 18:55:26 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/09076e4f99f2039029e0037067080cf02235310cMike Erwin
<![CDATA[[9e8f939]: add runtime check for gpu_shader4 support]]> http://www.miikahweb.com/en/blender/git-logs/commit/9e8f939769b5fc0c07a544b04f96488656629ada 9e8f939
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
add runtime check for gpu_shader4 support

This extension includes a number of GLSL enhancements:
- full integer support
- interpolation qualifiers (flat, smooth, noperspective)
- gl_VertexID, gl_PrimitiveID
- custom fragment shader outputs, for MRT

----------------------------------------
2 Paths Changed]]>
Mon, 27 Apr 2015 18:40:46 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/9e8f939769b5fc0c07a544b04f96488656629adaMike Erwin
<![CDATA[[b9ac83c]: single alloc per VertexBuffer, down from 2]]> http://www.miikahweb.com/en/blender/git-logs/commit/b9ac83ce9d7e03a549acaf4173429865aadbd70c b9ac83c
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
single alloc per VertexBuffer, down from 2

Using flexible array member from C99.

Tested on LLVM/clang, also supported in GCC and MSVC according to docs:

https://gcc.gnu.org/onlinedocs/gcc/Zero-Length.html
https://msdn.microsoft.com/en-us/library/b6fae073.aspx

----------------------------------------
1 Path Changed]]>
Thu, 23 Apr 2015 09:36:59 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/b9ac83ce9d7e03a549acaf4173429865aadbd70cMike Erwin
<![CDATA[[1178265]: minor cleanup]]> http://www.miikahweb.com/en/blender/git-logs/commit/1178265b0d2d425d4de184a53f76386758fa4f62 1178265
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
minor cleanup

Mostly moving stuff to where it belongs.

UNUSED_VARS macro explains intent better than (void)var, so use it.

Considered replacing calloc with malloc for ElementList.indices, but
it‚??s safer to zero this in case not all primitives are set. So calloc
it stays!

----------------------------------------
2 Paths Changed]]>
Thu, 23 Apr 2015 09:00:22 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/1178265b0d2d425d4de184a53f76386758fa4f62Mike Erwin
<![CDATA[[4d972a5]: keep vertex data in main mem or VRAM (not both)]]> http://www.miikahweb.com/en/blender/git-logs/commit/4d972a5606c300cfe19f299d913d09e6270e61da 4d972a5
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
keep vertex data in main mem or VRAM (not both)

If we‚??re using VBOs, free our own copy once GL has the data.

Data always lives in main memory while being constructed, so that we
don‚??t need to call any OpenGL functions until it‚??s time to draw.

----------------------------------------
2 Paths Changed]]>
Thu, 23 Apr 2015 07:06:30 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/4d972a5606c300cfe19f299d913d09e6270e61daMike Erwin
<![CDATA[[6f51182]: minor cleanup]]> http://www.miikahweb.com/en/blender/git-logs/commit/6f51182755f1b03161dc83a0d97ceb9e5de06c52 6f51182
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
minor cleanup

----------------------------------------
1 Path Changed]]>
Thu, 23 Apr 2015 05:29:54 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/6f51182755f1b03161dc83a0d97ceb9e5de06c52Mike Erwin
<![CDATA[[316b953]: reset shading to SMOOTH or FLAT]]> http://www.miikahweb.com/en/blender/git-logs/commit/316b953e347de45e898c55bae4f30c558b3f136f 316b953
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
reset shading to SMOOTH or FLAT

missed this as part of GPUx interpolation commit

----------------------------------------
1 Path Changed]]>
Thu, 23 Apr 2015 04:38:26 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/316b953e347de45e898c55bae4f30c558b3f136fMike Erwin
<![CDATA[[7cb24b5]: cleanup my own recent stuff]]> http://www.miikahweb.com/en/blender/git-logs/commit/7cb24b52d75c22b3d5e05b699affbf999644033c 7cb24b5
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
cleanup my own recent stuff

----------------------------------------
1 Path Changed]]>
Wed, 22 Apr 2015 07:30:00 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/7cb24b52d75c22b3d5e05b699affbf999644033cMike Erwin
<![CDATA[[1653bbc]: reduce VRAM usage for flat normals]]> http://www.miikahweb.com/en/blender/git-logs/commit/1653bbc778d5e6afa5f068a2118858c03749e964 1653bbc
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
reduce VRAM usage for flat normals

Reduce number of GL verts from (3 * tess_tri_ct) to (1 * loop_ct).
Attribute data formats unchanged.

stock Suzanne mesh
507 verts, 1005 edges, 500 polys, 500 faces, 1968 loops

mode = NORMAL_DRAW_FLAT

(3 * tri_ct) verts, vec3s normals (+padding)
GPUx batch size: 63886 bytes

(3 * tri_ct) verts, vec3s normals (no padding)
GPUx batch size: 58080 bytes

loop_ct verts, vec3s normals (+padding)
GPUx batch size: 45166 bytes

loop_ct verts, vec3s normals (no padding)
GPUx batch size: 41232 bytes

----------------------------------------
1 Path Changed]]>
Wed, 22 Apr 2015 06:59:55 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/1653bbc778d5e6afa5f068a2118858c03749e964Mike Erwin
<![CDATA[[27fe135]: reduce VRAM usage for loop normals]]> http://www.miikahweb.com/en/blender/git-logs/commit/27fe1353add75c3073d74b8c73b1fd3a5bbf86de 27fe135
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
reduce VRAM usage for loop normals

Use GL_SHORT instead of GL_FLOAT for normal attribute. Savings scale
proportional to loop count.

stock Suzanne mesh
507 verts, 1005 edges, 500 polys, 500 faces, 1968 loops

mode = NORMAL_DRAW_LOOP

vec3f normals
GPUx batch size: 53040 bytes

vec3s normals (+padding)
GPUx batch size: 45166 bytes

vec3s normals (no padding)
GPUx batch size: 41232 bytes

----------------------------------------
1 Path Changed]]>
Wed, 22 Apr 2015 06:13:42 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/27fe1353add75c3073d74b8c73b1fd3a5bbf86deMike Erwin
<![CDATA[[6ccc770]: determine normal draw mode better]]> http://www.miikahweb.com/en/blender/git-logs/commit/6ccc770a9552c7af78ef8a09b8bd76b7f98fe0d0 6ccc770
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
determine normal draw mode better

based on auto smooth, how many faces are flat vs. smooth, and viewport
overrides.

----------------------------------------
1 Path Changed]]>
Wed, 22 Apr 2015 05:23:36 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/6ccc770a9552c7af78ef8a09b8bd76b7f98fe0d0Mike Erwin
<![CDATA[[562d6ee]: fix compiler warnings (gcc 4.9)]]> http://www.miikahweb.com/en/blender/git-logs/commit/562d6ee7c419b243006285fd9744f33021fca067 562d6ee
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
fix compiler warnings (gcc 4.9)

----------------------------------------
2 Paths Changed]]>
Wed, 22 Apr 2015 02:01:44 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/562d6ee7c419b243006285fd9744f33021fca067Mike Erwin
<![CDATA[[249a1e7]: Mesh drawing: loop normals]]> http://www.miikahweb.com/en/blender/git-logs/commit/249a1e7f18ef930e49b32eec601d69dfa4d640fc 249a1e7
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
Mesh drawing: loop normals

Looks good, matches existing viewport.

Still room for size optimization here and with flat shading.

----------------------------------------
1 Path Changed]]>
Tue, 21 Apr 2015 21:17:20 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/249a1e7f18ef930e49b32eec601d69dfa4d640fcMike Erwin
<![CDATA[[8e069c4]: fix compile on MSVC]]> http://www.miikahweb.com/en/blender/git-logs/commit/8e069c4f8dc959ba728ab7211379c241939250be 8e069c4
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
fix compile on MSVC

BLI_threads uses bool, so depends on include order. Proper fix would be
to #include <stdbool.h> in BLI_threads.h but I don't want to modify in
this branch.

----------------------------------------
1 Path Changed]]>
Tue, 21 Apr 2015 07:15:51 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/8e069c4f8dc959ba728ab7211379c241939250beMike Erwin
<![CDATA[[59593af]: disable logging of orphaned GL buffer IDs]]> http://www.miikahweb.com/en/blender/git-logs/commit/59593af2a756673fb4c6c4edd9fc1c09c957d941 59593af
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
disable logging of orphaned GL buffer IDs

----------------------------------------
1 Path Changed]]>
Tue, 21 Apr 2015 07:02:30 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/59593af2a756673fb4c6c4edd9fc1c09c957d941Mike Erwin
<![CDATA[[0ea4747]: Mesh drawing: variety of surface normal treatments]]> http://www.miikahweb.com/en/blender/git-logs/commit/0ea474775227811e4aca2bc9b64cca9d7ded5ac9 0ea4747
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
Mesh drawing: variety of surface normal treatments

Can be NONE, SMOOTH, FLAT or LOOP.
LOOP is unfinished at the moment.
NONE might be pulled into its own drawing override mode.

Note: this commit includes some debug/tracing that is still useful to
me but will be removed in the future.

----------------------------------------
2 Paths Changed]]>
Tue, 21 Apr 2015 05:41:26 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/0ea474775227811e4aca2bc9b64cca9d7ded5ac9Mike Erwin
<![CDATA[[10f0954]: manage GL buffer IDs in a thread-safe way]]> http://www.miikahweb.com/en/blender/git-logs/commit/10f095463ca9a9bbeb123bf899c992c6d91f13e5 10f0954
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
manage GL buffer IDs in a thread-safe way

Old way was causing crash in GL when DerivedMesh discarded its
GPUxBatch from another thread.

New way deletes ID when safe to do so, otherwise ‚??orphans‚?Ě the ID to be
deleted later.

----------------------------------------
4 Paths Changed]]>
Tue, 21 Apr 2015 04:30:30 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/10f095463ca9a9bbeb123bf899c992c6d91f13e5Mike Erwin
<![CDATA[[1543c3f]: very minor cleanup]]> http://www.miikahweb.com/en/blender/git-logs/commit/1543c3f706f668b6fb29a6b9b2ec7da60d3fb873 1543c3f
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
very minor cleanup

----------------------------------------
2 Paths Changed]]>
Tue, 21 Apr 2015 04:31:29 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/1543c3f706f668b6fb29a6b9b2ec7da60d3fb873Mike Erwin
<![CDATA[[1cc677a]: const-ify BKE_mesh_calc_poly_normal]]> http://www.miikahweb.com/en/blender/git-logs/commit/1cc677a037ee6886fda73f1880a7e103012d0b91 1cc677a
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
const-ify BKE_mesh_calc_poly_normal

Some of my new mesh drawing code needs to call this with const data.

TODO: swing the ‚??const hammer‚?Ě at more BKE_mesh functions

----------------------------------------
2 Paths Changed]]>
Tue, 21 Apr 2015 04:35:52 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/1cc677a037ee6886fda73f1880a7e103012d0b91Mike Erwin
<![CDATA[[61978bb]: add GPUxBatch size query]]> http://www.miikahweb.com/en/blender/git-logs/commit/61978bbf32f1af14f0d730c344d3add6bd6ee281 61978bb
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
add GPUxBatch size query

How much VRAM does our draw data use? Or process memory for client-side
data.

Note: right now data is stored in *both* places, but the code will be
smarter about storage in the future.

----------------------------------------
6 Paths Changed]]>
Sun, 19 Apr 2015 07:06:52 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/61978bbf32f1af14f0d730c344d3add6bd6ee281Mike Erwin
<![CDATA[[f0caa0b]: Merge remote-tracking branch 'origin/GPU_data_request' into...]]> http://www.miikahweb.com/en/blender/git-logs/commit/f0caa0bbad4e56feb4732c6e265494d3690c7c96 f0caa0b
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
Merge remote-tracking branch 'origin/GPU_data_request' into GPU_data_request

Conflicts (resolved):
source/blender/gpu/intern/gpux_draw.c
source/blender/gpu/intern/gpux_element.c
source/blender/gpu/intern/gpux_vbo.c

----------------------------------------
0 Paths Changed]]>
Tue, 21 Apr 2015 06:27:52 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/f0caa0bbad4e56feb4732c6e265494d3690c7c96Mike Erwin
<![CDATA[[bcddec8]: Use BLI_assert instead of assert]]> http://www.miikahweb.com/en/blender/git-logs/commit/bcddec8a45babb399dc0de4dc71aecf7774f3cb9 bcddec8
Branches : GPU_data_request
Author : Antony Riakiotakis (psy-fi)
----------------------------------------
Use BLI_assert instead of assert

----------------------------------------
4 Paths Changed]]>
Fri, 17 Apr 2015 15:31:45 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/bcddec8a45babb399dc0de4dc71aecf7774f3cb9Antony Riakiotakis
<![CDATA[[b138fbe]: Use our own allocation routines for GPUx module]]> http://www.miikahweb.com/en/blender/git-logs/commit/b138fbe4a158dff8ca4cfd98198f921151c56e31 b138fbe
Branches : GPU_data_request
Author : Antony Riakiotakis (psy-fi)
----------------------------------------
Use our own allocation routines for GPUx module

----------------------------------------
3 Paths Changed]]>
Fri, 17 Apr 2015 14:36:04 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/b138fbe4a158dff8ca4cfd98198f921151c56e31Antony Riakiotakis
<![CDATA[[805ddc7]: Merge branch 'master' into GPU_data_request]]> http://www.miikahweb.com/en/blender/git-logs/commit/805ddc77905036c98788f9875c01adf2d44a2486 805ddc7
Branches : GPU_data_request
Author : Antony Riakiotakis (psy-fi)
----------------------------------------
Merge branch 'master' into GPU_data_request

Conflicts:
source/blender/makesdna/DNA_view3d_types.h

----------------------------------------
0 Paths Changed]]>
Fri, 17 Apr 2015 09:37:34 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/805ddc77905036c98788f9875c01adf2d44a2486Antony Riakiotakis
<![CDATA[[4b88dbb]: remove short int -> float conversion for vertex normals]]> http://www.miikahweb.com/en/blender/git-logs/commit/4b88dbb06ec201fa62455ca6e047556cb0dd9470 4b88dbb
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
remove short int -> float conversion for vertex normals

Performance experiment ‚?? thought this might be slowing down large
shaded meshes on Mac + nVidia but it was not. Index buffers in VRAM
fixed the perf issue :)

Keeping normals as GL_SHORT uses less memory. Would be 1/2 but
padding/alignment makes it 2/3. These stay GL_SHORT in VRAM also, and
are converted to floats when loaded by the vertex shader.

----------------------------------------
1 Path Changed]]>
Fri, 17 Apr 2015 03:23:46 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/4b88dbb06ec201fa62455ca6e047556cb0dd9470Mike Erwin
<![CDATA[[b91ebca]: add to GPUx state: interpolation (smooth shading)]]> http://www.miikahweb.com/en/blender/git-logs/commit/b91ebca68e4c45574caa24f790e7701003eebecf b91ebca
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
add to GPUx state: interpolation (smooth shading)

and remove manual calls to glShadeModel.

TODO: interpolation qualifier per attrib (flat/smooth/noperspective)
instead of here.

This requires GLSL 1.3 (OpenGL 3.0) or EXT_gpu_shader4 so we can‚??t go
down that path yet.

----------------------------------------
4 Paths Changed]]>
Fri, 17 Apr 2015 05:16:21 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/b91ebca68e4c45574caa24f790e7701003eebecfMike Erwin
<![CDATA[[3541f23]: fix compiler warnings (gcc 4.9)]]> http://www.miikahweb.com/en/blender/git-logs/commit/3541f234a28aedaa5efe70c8d3a0e51d625f0ef9 3541f23
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
fix compiler warnings (gcc 4.9)

----------------------------------------
4 Paths Changed]]>
Thu, 16 Apr 2015 21:10:06 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/3541f234a28aedaa5efe70c8d3a0e51d625f0ef9Mike Erwin
<![CDATA[[6695dd5]: store index buffers in VRAM]]> http://www.miikahweb.com/en/blender/git-logs/commit/6695dd5eea421a6ae8b44986a592d9b9a8c21369 6695dd5
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
store index buffers in VRAM

With this change, smooth solid meshes draw faster in the new viewport
than old with VBOs.

Wireframe was already faster, now it's CRAZY fast.

----------------------------------------
5 Paths Changed]]>
Thu, 16 Apr 2015 20:11:55 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/6695dd5eea421a6ae8b44986a592d9b9a8c21369Mike Erwin
<![CDATA[[33f85d0]: cache GPUx batches for performance++]]> http://www.miikahweb.com/en/blender/git-logs/commit/33f85d0fe2a52e94722f00e46472156e15451570 33f85d0
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
cache GPUx batches for performance++

WIP ‚?? developed on Mac, want to test on Linux & Windows so pushing
unfinished.

Everything needed for drawing is collected into a GPUxBatch. These are
generated per-object the first time drawn, then reused for subsequent
draws. Regenerated when DerivedMesh or draw mode changes.

TODO:
- actively reclaim memory (like gpu_buffers.c‚??s pool)
- store a list of batches per DM, for complex drawing
- find cause of low perf on high poly OB_SOLID rendering

----------------------------------------
5 Paths Changed]]>
Thu, 16 Apr 2015 17:56:34 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/33f85d0fe2a52e94722f00e46472156e15451570Mike Erwin
<![CDATA[[26e5c28]: init GL state tracking *after* clearing viewport]]> http://www.miikahweb.com/en/blender/git-logs/commit/26e5c28d399eb57696529dc96eb2bf439a7df0cb 26e5c28
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
init GL state tracking *after* clearing viewport

Clear function doesn‚??t use state tracking, sets GL directly.

----------------------------------------
1 Path Changed]]>
Mon, 13 Apr 2015 20:11:57 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/26e5c28d399eb57696529dc96eb2bf439a7df0cbMike Erwin
<![CDATA[[86b9bcb]: workaround for VBOs on Mesa]]> http://www.miikahweb.com/en/blender/git-logs/commit/86b9bcbfb4bd13f64a87e2138b680fe5e3e6e5ce 86b9bcb
Branches : GPU_data_request
Author : Mike Erwin (merwin)
----------------------------------------
workaround for VBOs on Mesa

----------------------------------------
1 Path Changed]]>
Mon, 13 Apr 2015 08:34:35 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/86b9bcbfb4bd13f64a87e2138b680fe5e3e6e5ceMike Erwin