Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-08-31PyDoc: Fix compliation warningAaron Carlisle
2021-08-30Docs: GPU Shader: improvementsGermano Cavalcante
Changes: - line break - enum highlighting - better description
2021-08-27Refactor IDProperty UI data storageHans Goudey
The storage of IDProperty UI data (min, max, default value, etc) is quite complicated. For every property, retrieving a single one of these values involves three string lookups. First for the "_RNA_UI" group property, then another for a group with the property's name, then for the data value name. Not only is this inefficient, it's hard to reason about, unintuitive, and not at all self-explanatory. This commit replaces that system with a UI data struct directly in the IDProperty. If it's not used, the only cost is of a NULL pointer. Beyond storing the description, name, and RNA subtype, derived structs are used to store type specific UI data like min and max. Note that this means that addons using (abusing) the `_RNA_UI` custom property will have to be changed. A few places in the addons repository will be changed after this commit with D9919. **Before** Before, first the _RNA_UI subgroup is retrieved the _RNA_UI group, then the subgroup for the original property, then specific UI data is accessed like any other IDProperty. ``` prop = rna_idprop_ui_prop_get(idproperties_owner, "prop_name", create=True) prop["min"] = 1.0 ``` **After** After, the `id_properties_ui` function for RNA structs returns a python object specifically for managing an IDProperty's UI data. ``` ui_data = idproperties_owner.id_properties_ui("prop_name") ui_data.update(min=1.0) ``` In addition to `update`, there are now other functions: - `as_dict`: Returns a dictionary of the property's UI data. - `clear`: Removes the property's UI data. - `update_from`: Copy UI data between properties, even if they have different owners. Differential Revision: https://developer.blender.org/D9697
2021-08-26PyAPI: GPU: expose clip distancesGermano Cavalcante
Now you can get a shader that uses Clip Planes and set the number of Clip Distanes with `gpu.state.clip_distances_set(value)`.
2021-08-26Fix issues with absolute time unitPhilipp Oeser
I think there are the following issues with {rB5fa6cdb77a98}: - if we introduce a PROP_UNIT_TIME_ABSOLUTE unit, shouldnt it be visible to RNA as well? - seems like a double entry sneaked into that commit? This is in preparation to use this for render time limit in cycles-x. ref. T90701 Maniphest Tasks: T90701 Differential Revision: https://developer.blender.org/D12315
2021-08-24Fix reporting Python reference leaks with WITH_PYTHON_SAFETYCampbell Barton
Error in f3e26c847b6ba0924cfd02641345164c54234425
2021-08-20DocPy: Cleanup missing newline resulting in wrong html generationAaron Carlisle
2021-08-19UI: Remove "Unfitted" Kerning Style OptionHarley Acheson
This patch removes the "Kerning Style" option for UI widget font drawing and uses only the current default of "Fitted", since the other option of "Unfitted" is just the result of truncation errors. see D12231 for much more information. Differential Revision: https://developer.blender.org/D12231 Reviewed by Campbell Barton
2021-08-17Docs: add API docs for gpu.capabilitiesnutti
Adds Python API documentations for gpu.capabilities module. Ref D12226
2021-08-17Cleanup: clang-formatCampbell Barton
2021-08-17Docs: add API docs for gpu.platformnutti
Adds Python API documentations for gpu.platform module. Ref D12222
2021-08-17Cleanup: compiler warningsCampbell Barton
2021-08-16PyAPI: GPUShader: make 'uniform_vector_*' less restrictedGermano Cavalcante
Buffers larger than required may be allowed without restriction.
2021-08-16PyAPI: GPU Buffer: Buffer protocol supportGermano Cavalcante
The code was commented due to lack of testing and short release deadline.
2021-08-16XR: Color Depth AdjustmentsPeter Kim
This addresses reduced visibility of scenes (as displayed in the VR headset) that can result from the 8-bit color depth format currently used for XR swapchain images. By switching to a swapchain format with higher color depth (RGB10_A2, RGBA16, RGBA16F) for supported runtimes, visibility in VR should be noticeably improved. However, current limitations are lack of support for these higher color depth formats by some XR runtimes, especially for OpenGL. Also important to note that GPU_offscreen_create() now explicitly takes in the texture format (eGPUTextureFormat) instead of a "high_bitdepth" boolean. Reviewed By: Julian Eisel, Clément Foucault Differential Revision: http://developer.blender.org/D9842
2021-08-13PyAPI: remove the .py extension requirement for startup registrationCampbell Barton
This was left over from when these scripts were loaded as modules, where their names needed to be compatible with Pythons module naming. Version patch existing files so text with register enabled without a `.py` extension wont start executing on startup. Resolves T89532.
2021-08-12RNA: include base types in RNA_struct_type_find_property searchCampbell Barton
Add RNA_struct_type_find_property_no_base for use in the rare situations when this isn't desired. Resolves T90617, where sequence strip sub-types weren't detecting properties that exist in the base "Sequence" types.
2021-08-12Cleanup: spelling in commentsCampbell Barton
2021-08-12Cleanup: use C++ style comments for disabled codeCampbell Barton
2021-08-11PyAPI: GPU: Expose builtin shadersGermano Cavalcante
Expose `3D_POLYLINE_SMOOTH_COLOR` and `3D_POLYLINE_FLAT_COLOR` builtins. Requested by addon developers.
2021-08-11PyAPI: report unreleased ID's with WITH_PYTHON_SAFETY enabledCampbell Barton
This would have made T88033 more straightforward to track down.
2021-08-10Fix T89253: template_list allows arbitrary data changesGermano Cavalcante
Blender forbids property changes in .draw() methods. But they weren't caught after a call to .template_list() with a custom list type. Support nested calls that disallow writes.
2021-08-09PyAPI: resolve build error with Python 3.10Campbell Barton
Resolves T89931
2021-08-09Cleanup: spelling in commentsCampbell Barton
2021-08-07PyDoc: Fix poll_message_set API documentation to consistent with Python stylenutti
Fix poll_message_set API documentation to consistent with Python style Reviewed By: Blendify Differential Revision: https://developer.blender.org/D12150
2021-08-05Cleanup: remove redundant parenthesisCampbell Barton
2021-08-05Fix slicing with negative indicesCampbell Barton
Negative indices that remained negative after adding the sequence length caused incorrect slicing. With the default scene for example: bpy.context.scene.objects[-4:2] Gave a different result to: tuple(bpy.context.scene.objects)[-4:2] Clamp indices above zero so loops that step forward works as intended.
2021-08-05Fix T89450: Crash slicing BMEditSelSeqCampbell Barton
Slicing with indices greater than the length of the sequence would crash.
2021-08-05Cleanup: make formatAaron Carlisle
2021-08-04Cleanup: inconsistent parameter nameJacques Lucke
2021-08-04Expose Color Management as argument for gpu.types.GPUOffScreen.draw_view3d()Gottfried Hofmann
Fix for https://developer.blender.org/T84227 The problem was that https://developer.blender.org/rBe0ffb911a22bb03755687f45fc1a996870e059a8 turned color management for offscreen rendering off by default, which makes it non-color-managed in some cases. So the idea here is that script authors get the choice wether they want color managed non-color-managed output. Thus this patch introduces a new argument do_color_management as a bool to gpu.types.GPUOffScreen.draw_view3d(). Reviewed By: jbakker Differential Revision: https://developer.blender.org/D11645
2021-08-03Cleanup: use C++ comments or 'if 0' for commented codeCampbell Barton
2021-07-30Cleanup: spelling in commentsCampbell Barton
2021-07-30PyAPI: defer freeing existing properties on registrationCampbell Barton
Registering a property could remove the existing property, then fail to parse one of the arguments of the new property - leaving the struct without a property. Now freeing the existing property is deferred until immediately before the new property is registered.
2021-07-30PyAPI: include the property name & type in registration errorsCampbell Barton
This gives useful context in errors, also remove newline endings from exceptions.
2021-07-30Cleanup: use pyrna_enum_value_parse_string parser for enum argsCampbell Barton
2021-07-30Cleanup: bpy.props variable namesCampbell Barton
- Use `default` instead of `def` abbreviation. - Rename `BPYPropArrayLength` to `BPyPropArrayLength` in keeping with other local structs. - Remove _PyArg_Parser.fname value accidentally left in (harmless as it's not used).
2021-07-30PyAPI: support accessing the original value for RNA enum parsingCampbell Barton
Needed in siturations when the input argument is needed for exception messages.
2021-07-30Cleanup: replace macros with converter callbacks for bpy.propsCampbell Barton
Macros were used for expanding shared logic for some properties. Replace this with Python converters & a funciton that handles deferred registration. Add generic converter functions for RNA enums: - pyrna_enum_value_parse_string - pyrna_enum_bitfield_parse_set
2021-07-29Fix memory leaks in Python gizmo get/set handlersCampbell Barton
2021-07-29Fix gpu.types.GPUTexture crash when the size argument was too bigCampbell Barton
Missing length check on the size argument before copying it into a fixed size buffer.
2021-07-29Cleanup: use PyC_AsArray_FAST function where possibleCampbell Barton
Oversight in 2453dc1b0ecad21a84b45e8c900a16cc42fa12f1.
2021-07-29PyAPI: support multi-dimensional arrays for bpy.props vector typesCampbell Barton
- Multi-dimensional boolean, int and float vector types are supported. - A sequence of int's for the "size" is used to declare dimensions. - Nested sequences are required for default arguments. Now it's possible to define matrix properties, for e.g: bpy.props.FloatVectorProperty(size=(4, 4), subtype='MATRIX')
2021-07-29PyAPI: add multi-dimensional array conversion utility functionsCampbell Barton
Add array conversion functions that take dimension arguments. - PyC_AsArray_Multi (version of PyC_AsArray). - PyC_Tuple_PackArray_Multi_* (version of PyC_Tuple_Pack_*).
2021-07-28Cleanup: reduce indentation in bpy.propsCampbell Barton
Remove unnecessary NULL checks.
2021-07-27Fix memory leak with Python RNA property get callback errorsCampbell Barton
Failure to return a list of the expected size & type wasn't decrementing the value, leaking a reference. Caused by 127b5423d6203d521acb2b96b7de5534e8dbe79a a workaround for the real error that was fixed f5e020a7a6ad6451fcaf075ae14f7014b8a4faea.
2021-07-27PyAPI: support different int sizes for PyC_AsArrayCampbell Barton
2021-07-27Cleanup: pass sizeof array element to PyC_AsArrayCampbell Barton
Replace the is_double argument which was only used for single/double precision floats. This allows supporting different sized int types more easily.
2021-07-23PyDocs: Fix syntax errors resulting in warningsAaron Carlisle
2021-07-23Cleanup: double spaces in stringsCampbell Barton