cf03658adb
Fix misuse of Py_INCREF in module creation.
...
Differential Revision: https://developer.blender.org/D3697
2018-10-08 20:01:55 -03:00
d592eb510e
Cleanup: naming
2018-10-09 09:25:33 +11:00
d022794cad
Cleanup: rename checks for Python struct strings
...
Using 'format' prefix made this read as if t was for string formatting.
Use 'PyC_StructFmt' prefix instead since these values are compatible
with formatting from Python's 'struct' module.
2018-10-08 08:37:32 +11:00
91bfea5b05
CPython: py_capi_utils: use more descriptive names for format string utilities.
2018-10-07 12:21:09 -03:00
ee2e30683c
Cleanup: style
2018-10-07 17:49:22 +11:00
495a7128cb
Cleanup: use the naming convention in py_capi_utils
...
And use inline functions instead of preprocessor directives.
2018-10-06 01:15:15 -03:00
0f55334413
Cleanup: use new format string utility
2018-10-06 00:13:54 -03:00
9bd65528e3
GPU Python: optionally init the vertexformat in the vertexbuffer itself.
2018-10-05 17:22:03 -03:00
550fee8eb6
GPU Python: use _PyArg_ParseTupleAndKeywordsFast.
2018-10-05 14:38:35 -03:00
eab00bf202
GPU Python: fix crash when calling batch.draw
without passing a shader.
2018-10-05 11:55:17 -03:00
564d37c4b6
Python API: new GPUVertFormat constructor and vbo.fill_attribute method
...
Reviewer: fclem
Differential Revision: https://developer.blender.org/D3760
2018-10-05 15:10:56 +02:00
c15439bcdc
Cleanup: use PyModule_AddIntConstant
2018-10-04 23:53:57 -03:00
ee6c8be183
GPU Python: rename methods "shader_from_builtin" and "shader_code_from_builtin" to "from_builtin" and "code_from_builtin".
2018-10-04 13:51:21 -03:00
b183f57a9e
GPU Python: Fix assert in PySequence_Fast_GET_SIZE
2018-10-04 13:49:06 -03:00
46eb050c9d
Cleanup: remove single backtick quotes
...
This isn't valid RST.
2018-10-04 13:08:28 +10:00
ffa15f4b4a
Python GPU: GPUBatch and GPUShader refactor.
...
The changes are:
- The shader now is passed as a parameter of the batch `draw` method (batch.draw(shader)). Since the batch always has to set a shader before drawing;
- The batch methods to specify a value to a uniform have been removed. Uniforms are parameters of the program (here called shader). If you change a uniform, it changes in all batchs that use the same program;
- New methods were added to set uniforms by the shader;
- The `batch.program_set_builtin` was removed. It is a duplicate of `program_set` but without a shader object. We need the shader object to configure the uniform;
Differential Revision: https://developer.blender.org/D3752
2018-10-03 23:34:27 -03:00
3aed08377d
GPY Python: program_use_begin and program_use_end.
...
The user has to be encouraged to use the `program_set` or `program_set_builtin` before drawing.
This avoids problem with gl_context.
2018-10-01 13:58:51 -03:00
8ee4fd0bdf
Cleanup: style
2018-10-01 09:20:31 +10:00
14e7fcfdde
Cleanup: warnings
2018-09-27 21:15:55 +10:00
da96336e5f
Python GPU module: Wrap GPUIndexBuf
...
Differential Revision D3714
2018-09-27 00:53:45 -03:00
1e647a570d
Python GPU module: replace PyArg_ParseTupleAndKeywords
by _PyArg_ParseTupleAndKeywordsFast
...
part of T47811 ("for faster argument parsing").
2018-09-27 00:22:57 -03:00
4323ccfa6b
GPU Python API: matrix.load_projection_matrix
...
If the `push_projection` and `pop_projection` functions already exist, there should naturally be a way to load a projection matrix.
2018-09-21 15:07:41 -03:00
08c7733c13
Cleanup: style
2018-09-21 08:11:50 +10:00
Dalai Felinto
fb88088203
Preserve the actively bound framebuffer after using gpu.offscreen
...
Otherwise we cannot draw anything after drawing in the offscreen buffer
2018-09-20 21:43:08 +00:00
Dalai Felinto
425cfdd5be
GPU Python API: shader.uniform_float
...
The existing alternative is to use a buffer and call
uniform_vector_float which is overkill for such a simple operation.
2018-09-20 19:51:06 +00:00
Dalai Felinto
e316e41f84
Typo on pydoc for uniform_int
2018-09-20 19:49:08 +00:00
f0149bc070
gpu.batch module: keep shader reference in batch.
2018-09-20 16:38:43 -03:00
9fb9604c19
gpu.shader module: Do not free builtin shaders.
2018-09-20 15:21:59 -03:00
9c2dc808ce
gpu.shader.builtin module: Add GPU_SHADER_2D_IMAGE.
2018-09-20 13:55:43 -03:00
83d4328ce7
PyDoc: add gpu.shader
...
Also some syntax corrections.
2018-09-15 10:35:03 +10:00
1287965089
GPU module: Initial implementation of the gpu.shader
submodule.
...
Differential Revision: https://developer.blender.org/D3688
2018-09-14 09:46:19 -03:00
76d67b4db4
Merge branch 'master' into blender2.8
2018-09-13 17:08:58 +10:00
cde66d7916
GPUVertBuf.fill: support for objects with buffer interface.
...
Differential Revision: https://developer.blender.org/D3684
2018-09-11 10:03:53 -03:00
9eb1c3f70c
gpu module: close quotation marks in descriptions
2018-09-06 04:43:08 -03:00
5ad36c975f
gpu module: retouching the description of the types.
2018-09-06 04:39:39 -03:00
fa6ed6259c
Cleanup: style
2018-09-06 10:47:46 +10:00
539c140b3e
Correct build errors
2018-09-06 10:47:46 +10:00
6d04e48539
Join the python modules gpu
and _gpu
into one.
...
Maybe it's still early to set the new drawing api for python.
But joining these two modules is an initial step.
```
>>> gpu.
matrix
select
types
```
```
>>> gpu.types.GPU
Batch(
OffScreen(
VertBuf(
VertFormat(
```
The creation of a new offscreen object is now done by the `GPUOffscreen.__new__` method.
Reviewers: campbellbarton, dfelinto
Reviewed By: campbellbarton, dfelinto
Tags: #bf_blender_2.8
Differential Revision: https://developer.blender.org/D3667
2018-09-05 21:15:44 -03:00
9df1e54079
Cleanup: style
2018-07-19 16:06:37 +10:00
8cd7828792
GWN: Port to GPU module: Replace GWN prefix by GPU
2018-07-18 11:49:15 +02:00