Campbell Barton
c434782e3a
File headers: SPDX License migration
...
Use a shorter/simpler license convention, stops the header taking so
much space.
Follow the SPDX license specification: https://spdx.org/licenses
- C/C++/objc/objc++
- Python
- Shell Scripts
- CMake, GNUmakefile
While most of the source tree has been included
- `./extern/` was left out.
- `./intern/cycles` & `./intern/atomic` are also excluded because they
use different header conventions.
doc/license/SPDX-license-identifiers.txt has been added to list SPDX all
used identifiers.
See P2788 for the script that automated these edits.
Reviewed By: brecht, mont29, sergey
Ref D14069
2022-02-11 09:14:36 +11:00
Germano Cavalcante
2e5aecf557
Fix T94202: GPUFrameBuffer: wrong refcount in the buffer passed for read_color and read_depth
...
The buffer passed as an argument to `GPUFrameBuffer.read_color` is used
in the return of the function and therefore, if not used, its refcount is
decremented.
So be sure to increment the refcount of the already existing objects that
will be used in the return of a function.
2022-01-18 19:23:16 -03:00
Germano Cavalcante
e77a1dc6b0
Fix name used when parsing arguments
2021-07-22 15:29:09 -03:00
Germano Cavalcante
1b44b47f69
PyGPU: new method 'GPUFrameBuffer.read_depth'
...
Method requested by users in order to port addons to new API.
2021-07-22 15:17:48 -03:00
Campbell Barton
c3a400b73f
Cleanup: use single back-tick quoting in comments
...
While doxygen supports both, conform to our style guide.
Note that single back-tick's are already used in a majority of comments.
2021-07-20 22:58:14 +10:00
Campbell Barton
6570159929
Cleanup: update clang-format so PyObject_HEAD indents properly
2021-06-24 17:12:04 +10:00
Campbell Barton
4b9ff3cd42
Cleanup: comment blocks, trailing space in comments
2021-06-24 15:59:34 +10:00
Germano Cavalcante
ea7b00c64f
Fix T88345: Blender crash on GPUFrameBuffer creation
...
Misuse of indexes.
`color_attachements` has only color ones while `config` has color and depth.
2021-05-18 09:39:31 -03:00
Campbell Barton
75536b5a61
Cleanup: compiler warnings
2021-05-01 00:49:55 +10:00
Germano Cavalcante
2bd9a28ff8
Cleanup: Rename #if GPU_USE_PY_REFERENCES to #ifndef GPU_NO_USE_PY_REFERENCES
...
This is safer for incremental build.
And there was already a macro `GPU_USE_PY_REFERENCES` used elsewhere.
2021-04-30 11:20:39 -03:00
Germano Cavalcante
a711aa5b3c
Fix accidental lines removed in the last commit
2021-04-30 11:03:39 -03:00
Germano Cavalcante
a35d33d520
Fix gross errors in previous commit
2021-04-30 11:00:57 -03:00
Germano Cavalcante
2510bd3a5f
Python GPU: Add new methods to port the code templates in the manual
...
This commit adds a new API tha allow to replace the bgl API in the exemples on:
https://docs.blender.org/api/current/gpu.html
**Overview (New API):**
```
gpu.state: active_framebuffer_get
GPUFramebuffer: read_color
GPUOffscreen: texture_color
```
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D11031
2021-04-30 10:49:54 -03:00
Germano Cavalcante
04b6296e81
Python GPU: Add reference of PyObject GPU object to the GPU object itself
...
Instead of creating different python wrappers for the same GPU object,
return the same `PyObject` created earlier.
This also allows for more secure access to existing GPU objects.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D11044
2021-04-30 10:42:13 -03:00
Germano Cavalcante
0f66dbea90
Fix wrong flag for 'GPUFrameBuffer.viewport_get'
...
`GPUFrameBuffer.viewport_get` has no args.
2021-04-21 17:15:13 -03:00
Germano Cavalcante
b71b1ae384
Python GPU: Improve the Python GPU API documentation
...
This fixes some errors of continuity and consistency of formatting on
https://docs.blender.org/api/current/gpu.html
This also details the description of some parameters.
Differential Revision: https://developer.blender.org/D10531
2021-03-16 12:48:39 -03:00
Germano Cavalcante
5be72125bf
Cleanup: Move some utilities to 'gpu_py.h'
2021-02-24 10:58:15 -03:00
Hans Goudey
73f4dfa3c5
Cleanup: Clang tidy else after return
2021-02-18 13:58:27 -06:00
Germano Cavalcante
4430e8a008
Python: gpu module: add new submodules and types
...
This commit extends the gpu python API with:
```
gpu.types.Buffer #"__init__", "to_list"
gpu.types.GPUTexture #"__init__", "clear", "read", "format"
gpu.types.GPUFrameBuffer #"__init__", "bind", "clear", "is_bound", "viewport", ("__enter__", "__exit__" with "GPUFrameBufferStackContext")
gpu.types.GPUUniformBuf #"__init__", "update"
gpu.state #"blend_set", "blend_get", "depth_test_set", "depth_test_get", "depth_mask_set", "depth_mask_get", "viewport_set", "viewport_get", "line_width_set", "line_width_get", "point_size_set", "color_mask_set", "face_culling_set", "front_facing_set", "program_point_size_set"
```
Add these methods to existing objects:
```
gpu.types.GPUShader #"uniform_sample", "uniform_buffer"
```
Maniphest Tasks: T80481
Differential Revision: https://developer.blender.org/D8826
2021-02-17 12:27:19 -03:00
Germano Cavalcantemano-wii
af88d23ffa
Revert "Fix typo; Documentation; Expose layer for framebuffer attachament; Add framebuffer viewport setter; Remove framebuffer restore; Expose framebuffer push/pop stack API; Remove blend modes; Remove depth_range_set; Implement GPU_face_culling, GPU_front_facing, GPU_point_size, GPU_line_width, GPU_viewport, GPU_color_mask and GPU_depth_mask"
...
This reverts commit 9db3d1951d .
This was an accidental commit of the patch D8826
2021-01-10 21:07:04 -03:00
Germano Cavalcantemano-wii
9db3d1951d
Fix typo; Documentation; Expose layer for framebuffer attachament; Add framebuffer viewport setter; Remove framebuffer restore; Expose framebuffer push/pop stack API; Remove blend modes; Remove depth_range_set; Implement GPU_face_culling, GPU_front_facing, GPU_point_size, GPU_line_width, GPU_viewport, GPU_color_mask and GPU_depth_mask
2021-01-10 19:01:53 -03:00