Cleanup: spelling in comments
This commit is contained in:
@@ -1763,7 +1763,7 @@ GHOST_TSuccess GHOST_SystemCocoa::handleMouseEvent(void *eventPtr)
|
||||
dx = [event scrollingDeltaX];
|
||||
dy = [event scrollingDeltaY];
|
||||
|
||||
/* However, Wacom tablet (intuos5) needs old deltas,
|
||||
/* However, WACOM tablet (intuos5) needs old deltas,
|
||||
* it then has momentum and phase at zero. */
|
||||
if (phase == NSEventPhaseNone && momentumPhase == NSEventPhaseNone) {
|
||||
dx = [event deltaX];
|
||||
|
||||
@@ -482,7 +482,7 @@ static void SleepTillEvent(Display *display, int64_t maxSleep)
|
||||
}
|
||||
}
|
||||
|
||||
/* This function borrowed from Qt's X11 support qclipboard_x11.cpp */
|
||||
/* This function borrowed from QT's X11 support `qclipboard_x11.cpp`. */
|
||||
struct init_timestamp_data {
|
||||
Time timestamp;
|
||||
};
|
||||
|
||||
@@ -224,7 +224,7 @@ class pySketchyChainSilhouetteIterator(ChainingIterator):
|
||||
# keeping this local saves passing a reference to 'self' around
|
||||
def make_sketchy(self, ve):
|
||||
"""
|
||||
Creates the skeychy effect by causing the chain to run from
|
||||
Creates the sketchy effect by causing the chain to run from
|
||||
the start again. (loop over itself again)
|
||||
"""
|
||||
if ve is None:
|
||||
@@ -459,9 +459,8 @@ class pyFillOcclusionsAbsoluteAndRelativeChainingIterator(ChainingIterator):
|
||||
self._percent = float(percent)
|
||||
|
||||
def init(self):
|
||||
# each time we're evaluating a chain length
|
||||
# we try to do it once. Thus we reinit
|
||||
# the chain length here:
|
||||
# Each time we're evaluating a chain length we try to do it once.
|
||||
# Thus we reinitialize the chain length here:
|
||||
self._length = 0.0
|
||||
|
||||
def traverse(self, iter):
|
||||
@@ -531,7 +530,7 @@ class pyFillQi0AbsoluteAndRelativeChainingIterator(ChainingIterator):
|
||||
self._percent = percent
|
||||
|
||||
def init(self):
|
||||
# A chain's length should preverably be evaluated only once.
|
||||
# A chain's length should preferably be evaluated only once.
|
||||
# Therefore, the chain length is reset here.
|
||||
self._length = 0.0
|
||||
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# Filename : shaders.py
|
||||
# Authors : Fredo Durand, Stephane Grabli, Francois Sillion, Emmanuel Turquin
|
||||
# Date : 11/08/2005
|
||||
# Purpose : Stroke shaders to be used for creation of stylized strokes
|
||||
@@ -834,7 +833,7 @@ class pyPerlinNoise1DShader(StrokeShader):
|
||||
"""
|
||||
Displaces the stroke using the curvilinear abscissa. This means
|
||||
that lines with the same length and sampling interval will be
|
||||
identically distorded.
|
||||
identically distorted.
|
||||
"""
|
||||
|
||||
def __init__(self, freq=10, amp=10, oct=4, seed=-1):
|
||||
@@ -855,10 +854,10 @@ class pyPerlinNoise1DShader(StrokeShader):
|
||||
class pyPerlinNoise2DShader(StrokeShader):
|
||||
"""
|
||||
Displaces the stroke using the strokes coordinates. This means
|
||||
that in a scene no strokes will be distorded identically.
|
||||
that in a scene no strokes will be distorted identically.
|
||||
|
||||
More information on the noise shaders can be found at:
|
||||
freestyleintegration.wordpress.com/2011/09/25/development-updates-on-september-25/
|
||||
https://freestyleintegration.wordpress.com/2011/09/25/development-updates-on-september-25/
|
||||
"""
|
||||
|
||||
def __init__(self, freq=10, amp=10, oct=4, seed=-1):
|
||||
@@ -898,7 +897,7 @@ class pyBluePrintCirclesShader(StrokeShader):
|
||||
C = self.__random_center
|
||||
|
||||
# The directions (and phases) are calculated using a separate
|
||||
# function decorated with an lru-cache. This guarantees that
|
||||
# function decorated with an LRU-cache. This guarantees that
|
||||
# the directions (involving sin and cos) are calculated as few
|
||||
# times as possible.
|
||||
#
|
||||
@@ -977,7 +976,7 @@ class pyBluePrintEllipsesShader(StrokeShader):
|
||||
class pyBluePrintSquaresShader(StrokeShader):
|
||||
def __init__(self, turns=1, bb_len=10, bb_rand=0):
|
||||
StrokeShader.__init__(self)
|
||||
self.__turns = turns # does not have any effect atm
|
||||
self.__turns = turns # Does not have any effect ATM.
|
||||
self.__bb_len = bb_len
|
||||
self.__bb_rand = bb_rand
|
||||
|
||||
|
||||
@@ -147,7 +147,7 @@ def normal_at_I0D(it: Interface0DIterator) -> Vector:
|
||||
# give iterator back in original state
|
||||
it.decrement()
|
||||
elif it.is_end:
|
||||
# just fail hard: this shouldn not happen
|
||||
# Just fail hard: this should not happen.
|
||||
raise StopIteration()
|
||||
else:
|
||||
# this case sometimes has a small difference with Normal2DF0D (1e-3 -ish)
|
||||
@@ -197,8 +197,8 @@ def phase_to_direction(length):
|
||||
return results
|
||||
|
||||
|
||||
# -- simplification of a set of points; based on simplify.js by Vladimir Agafonkin --
|
||||
# https://mourner.github.io/simplify-js/
|
||||
# Simplification of a set of points; based on `simplify.js`:
|
||||
# See: https://mourner.github.io/simplify-js
|
||||
|
||||
def getSquareSegmentDistance(p, p1, p2):
|
||||
"""
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# Filename : parameter_editor.py
|
||||
# Authors : Tamito Kajiyama
|
||||
# Date : 26/07/2010
|
||||
# Purpose : Interactive manipulation of stylization parameters
|
||||
@@ -811,7 +810,7 @@ class PerlinNoise1DShader(StrokeShader):
|
||||
"""
|
||||
Displaces the stroke using the curvilinear abscissa. This means
|
||||
that lines with the same length and sampling interval will be
|
||||
identically distorded.
|
||||
identically distorted.
|
||||
"""
|
||||
|
||||
def __init__(self, freq=10, amp=10, oct=4, angle=radians(45), seed=-1):
|
||||
|
||||
@@ -441,9 +441,9 @@ def disable(module_name, *, default_set=False, handle_error=None):
|
||||
|
||||
mod = sys.modules.get(module_name)
|
||||
|
||||
# possible this addon is from a previous session and didn't load a
|
||||
# Possible this add-on is from a previous session and didn't load a
|
||||
# module this time. So even if the module is not found, still disable
|
||||
# the addon in the user prefs.
|
||||
# the add-on in the user preferences.
|
||||
if mod and getattr(mod, "__addon_enabled__", False) is not False:
|
||||
mod.__addon_enabled__ = False
|
||||
mod.__addon_persistent = False
|
||||
|
||||
@@ -23,7 +23,7 @@ _app_template = {
|
||||
"id": "",
|
||||
}
|
||||
|
||||
# instead of sys.modules
|
||||
# Instead of `sys.modules`
|
||||
# note that we only ever have one template enabled at a time
|
||||
# so it may not seem necessary to use this.
|
||||
#
|
||||
|
||||
@@ -2,6 +2,6 @@
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# Copyright (c) 2009 www.stani.be
|
||||
# Copyright (c) 2009 https://www.stani.be
|
||||
|
||||
"""Package for console specific modules."""
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# Copyright (c) 2009 www.stani.be
|
||||
# Copyright (c) 2009 https://www.stani.be
|
||||
|
||||
import inspect
|
||||
import re
|
||||
@@ -131,7 +131,7 @@ def get_argspec(func, *, strip_self=True, doc=None, source=None):
|
||||
|
||||
|
||||
def complete(line, cursor, namespace):
|
||||
"""Complete callable with calltip.
|
||||
"""Complete callable with call-tip.
|
||||
|
||||
:arg line: incomplete text line
|
||||
:type line: str
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# Copyright (c) 2009 Fernando Perez, www.stani.be
|
||||
# Copyright (c) 2009 Fernando Perez, https://www.stani.be
|
||||
|
||||
# Original copyright (see doc-string):
|
||||
# ****************************************************************************
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# Copyright (c) 2009 www.stani.be
|
||||
# Copyright (c) 2009 https://www.stani.be
|
||||
|
||||
"""Autocomplete with the standard library"""
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# Copyright (c) 2009 www.stani.be
|
||||
# Copyright (c) 2009 https://www.stani.be
|
||||
|
||||
"""This module provides intellisense features such as:
|
||||
|
||||
|
||||
@@ -1105,7 +1105,7 @@ def dump_addon_messages(module_name, do_checks, settings):
|
||||
dump_rna_messages(msgs, reports, settings)
|
||||
print("C")
|
||||
|
||||
# Now disable our addon, and rescan RNA.
|
||||
# Now disable our addon, and re-scan RNA.
|
||||
utils.enable_addons(addons={module_name}, disable=True)
|
||||
print("D")
|
||||
reports["check_ctxt"] = minus_check_ctxt
|
||||
|
||||
@@ -26,13 +26,13 @@ except ModuleNotFoundError:
|
||||
|
||||
# The languages defined in Blender.
|
||||
LANGUAGES_CATEGORIES = (
|
||||
# Min completeness level, UI english label.
|
||||
# Min completeness level, UI English label.
|
||||
(0.95, "Complete"),
|
||||
(0.33, "In Progress"),
|
||||
(-1.0, "Starting"),
|
||||
)
|
||||
LANGUAGES = (
|
||||
# ID, UI english label, ISO code.
|
||||
# ID, UI English label, ISO code.
|
||||
(0, "Automatic (Automatic)", "DEFAULT"),
|
||||
(1, "English (English)", "en_US"),
|
||||
(2, "Japanese (日本語)", "ja_JP"),
|
||||
@@ -195,8 +195,8 @@ PYGETTEXT_CONTEXTS = "#define\\s+(BLT_I18NCONTEXT_[A-Z_0-9]+)\\s+\"([^\"]*)\""
|
||||
# autopep8: off
|
||||
|
||||
# Keywords' regex.
|
||||
# XXX Most unfortunately, we can't use named backreferences inside character sets,
|
||||
# which makes the regexes even more twisty... :/
|
||||
# XXX Most unfortunately, we can't use named back-references inside character sets,
|
||||
# which makes the REGEXES even more twisty... :/
|
||||
_str_base = (
|
||||
# Match void string
|
||||
"(?P<{_}1>[\"'])(?P={_}1)" # Get opening quote (' or "), and closing immediately.
|
||||
@@ -258,7 +258,7 @@ PYGETTEXT_KEYWORDS = (() +
|
||||
tuple(("{}\\((?:[^,]+,){{2}}\\s*" + _msg_re + r"\s*(?:\)|,)").format(it)
|
||||
for it in ("modifier_subpanel_register", "gpencil_modifier_subpanel_register")) +
|
||||
|
||||
# Node socket declarations: contextless names
|
||||
# Node socket declarations: context-less names.
|
||||
tuple((r"\.{}<decl::.*?>\(\s*" + _msg_re + r"(?:,[^),]+)*\s*\)"
|
||||
r"(?![^;]*\.translation_context\()").format(it)
|
||||
for it in ("add_input", "add_output")) +
|
||||
|
||||
@@ -133,9 +133,9 @@ def find_best_isocode_matches(uid, iso_codes):
|
||||
|
||||
def get_po_files_from_dir(root_dir, langs=set()):
|
||||
"""
|
||||
Yield tuples (uid, po_path) of translations for each po file found in the given dir, which should be either
|
||||
a dir containing po files using language uid's as names (e.g. fr.po, es_ES.po, etc.), or
|
||||
a dir containing dirs which names are language uids, and containing po files of the same names.
|
||||
Yield tuples (uid, po_path) of translations for each po file found in the given directory, which should be either
|
||||
a directory containing po files using language uid's as names (e.g. fr.po, es_ES.po, etc.), or
|
||||
a directory containing directories which names are language uids, and containing po files of the same names.
|
||||
"""
|
||||
found_uids = set()
|
||||
for p in os.listdir(root_dir):
|
||||
@@ -324,12 +324,12 @@ class I18nMessage:
|
||||
sources = property(_get_sources, _set_sources)
|
||||
|
||||
def _get_is_tooltip(self):
|
||||
# XXX For now, we assume that all messages > 30 chars are tooltips!
|
||||
# XXX For now, we assume that all messages > 30 chars are tool-tips!
|
||||
return len(self.msgid) > 30
|
||||
is_tooltip = property(_get_is_tooltip)
|
||||
|
||||
def copy(self):
|
||||
# Deepcopy everything but the settings!
|
||||
# Deep-copy everything but the settings!
|
||||
return self.__class__(msgctxt_lines=self.msgctxt_lines[:], msgid_lines=self.msgid_lines[:],
|
||||
msgstr_lines=self.msgstr_lines[:], comment_lines=self.comment_lines[:],
|
||||
is_commented=self.is_commented, is_fuzzy=self.is_fuzzy, settings=self.settings)
|
||||
@@ -345,7 +345,7 @@ class I18nMessage:
|
||||
lns = text.splitlines()
|
||||
return [l + "\n" for l in lns[:-1]] + lns[-1:]
|
||||
|
||||
# We do not need the full power of textwrap... We just split first at escaped new lines, then into each line
|
||||
# We do not need the full power of text-wrap... We just split first at escaped new lines, then into each line
|
||||
# if needed... No word splitting, nor fancy spaces handling!
|
||||
def _wrap(text, max_len, init_len):
|
||||
if len(text) + init_len < max_len:
|
||||
|
||||
@@ -22,7 +22,7 @@ FLAG_MESSAGES = {
|
||||
|
||||
def gen_menu_file(stats, settings):
|
||||
# Generate languages file content used by Blender's i18n system.
|
||||
# First, match all entries in LANGUAGES to a lang in stats, if possible!
|
||||
# First, match all entries in LANGUAGES to a `lang` in stats, if possible!
|
||||
# Returns a iterable of text lines.
|
||||
tmp = []
|
||||
for uid_num, label, uid in settings.LANGUAGES:
|
||||
|
||||
@@ -128,7 +128,7 @@ def protect_format_seq(msg):
|
||||
def log2vis(msgs, settings):
|
||||
"""
|
||||
Globally mimics deprecated fribidi_log2vis.
|
||||
msgs should be an iterable of messages to rtl-process.
|
||||
msgs should be an iterable of messages to RTL-process.
|
||||
"""
|
||||
fbd = ctypes.CDLL(settings.FRIBIDI_LIB)
|
||||
|
||||
|
||||
@@ -608,7 +608,7 @@ class SpellChecker:
|
||||
"freestyle",
|
||||
"enum", "enums",
|
||||
"gizmogroup",
|
||||
"gon", "gons", # N-Gon(s)
|
||||
"gon", "gons", # N-GON(s)
|
||||
"gpencil",
|
||||
"idcol",
|
||||
"keyframe", "keyframes", "keyframing", "keyframed",
|
||||
@@ -786,7 +786,7 @@ class SpellChecker:
|
||||
"rgb", "rgba",
|
||||
"ris",
|
||||
"rhs",
|
||||
"rpp", # Eevee ray-tracing?
|
||||
"rpp", # EEVEE ray-tracing?
|
||||
"rv",
|
||||
"sdf",
|
||||
"sdl",
|
||||
@@ -816,7 +816,7 @@ class SpellChecker:
|
||||
"bpy",
|
||||
"bvh",
|
||||
"dbvt",
|
||||
"dop", # BLI K-Dop BVH
|
||||
"dop", # BLI K-DOP BVH
|
||||
"ik",
|
||||
"nla",
|
||||
"py",
|
||||
|
||||
@@ -364,7 +364,7 @@ def bake_action_iter(
|
||||
while obj.constraints:
|
||||
obj.constraints.remove(obj.constraints[0])
|
||||
|
||||
# Create compatible eulers, quats.
|
||||
# Create compatible euler & quaternion rotations.
|
||||
euler_prev = None
|
||||
quat_prev = None
|
||||
|
||||
|
||||
@@ -11,13 +11,13 @@ class ProgressReport:
|
||||
|
||||
This object can be used as a context manager.
|
||||
|
||||
It supports multiple levels of 'substeps' - you shall always enter at least one substep (because level 0
|
||||
It supports multiple levels of 'sub-steps' - you shall always enter at least one sub-step (because level 0
|
||||
has only one single step, representing the whole 'area' of the progress stuff).
|
||||
|
||||
You should give the expected number of substeps each time you enter a new one (you may then step more or less then
|
||||
You should give the expected number of sub-steps each time you enter a new one (you may then step more or less then
|
||||
given number, but this will give incoherent progression).
|
||||
|
||||
Leaving a substep automatically steps by one the parent level.
|
||||
Leaving a sub-step automatically steps by one the parent level.
|
||||
|
||||
with ProgressReport() as progress: # Not giving a WindowManager here will default to console printing.
|
||||
progress.enter_substeps(10)
|
||||
@@ -110,7 +110,7 @@ class ProgressReportSubstep:
|
||||
|
||||
Its exit method always ensure ProgressReport is back on 'level' it was before entering this context.
|
||||
This means it is especially useful to ensure a coherent behavior around code that could return/continue/break
|
||||
from many places, without having to bother to explicitly leave substep in each and every possible place!
|
||||
from many places, without having to bother to explicitly leave sub-step in each and every possible place!
|
||||
|
||||
with ProgressReport() as progress: # Not giving a WindowManager here will default to console printing.
|
||||
with ProgressReportSubstep(progress, 10, final_msg="Finished!") as subprogress1:
|
||||
@@ -122,7 +122,7 @@ class ProgressReportSubstep:
|
||||
__slots__ = ("progress", "nbr", "msg", "final_msg", "level")
|
||||
|
||||
def __init__(self, progress, nbr, msg="", final_msg=""):
|
||||
# Allows to generate a subprogress context handler from another one.
|
||||
# Allows to generate a sub-progress context handler from another one.
|
||||
progress = getattr(progress, "progress", progress)
|
||||
|
||||
self.progress = progress
|
||||
|
||||
@@ -973,7 +973,7 @@ class _GenericUI:
|
||||
for func in draw_ls._draw_funcs:
|
||||
|
||||
# Begin 'owner_id' filter.
|
||||
# Exclude Import/Export menus from this filtering (io addons should always show there)
|
||||
# Exclude Import/Export menus from this filtering (IO add-ons should always show there).
|
||||
if not getattr(self, "bl_owner_use_filter", True):
|
||||
pass
|
||||
elif owner_names is not None:
|
||||
|
||||
@@ -298,7 +298,7 @@ def copy_as_script(context):
|
||||
text = line.body
|
||||
type = line.type
|
||||
|
||||
if type == 'INFO': # ignore autocomp.
|
||||
if type == 'INFO': # Ignore auto-completion.
|
||||
continue
|
||||
if type == 'INPUT':
|
||||
if text.startswith(PROMPT):
|
||||
|
||||
@@ -118,7 +118,7 @@ def register_node_categories(identifier, cat_list):
|
||||
if cat.poll(context):
|
||||
layout.menu("NODE_MT_category_%s" % cat.identifier)
|
||||
|
||||
# stores: (categories list, menu draw function, submenu types)
|
||||
# Stores: (categories list, menu draw function, sub-menu types).
|
||||
_node_categories[identifier] = (cat_list, draw_add_menu, menu_types)
|
||||
|
||||
|
||||
|
||||
@@ -194,7 +194,7 @@ def draw(layout, context, context_member, property_type, *, use_edit=True):
|
||||
operator_row.alignment = 'RIGHT'
|
||||
|
||||
# Do not allow editing of overridden properties (we cannot use a poll function
|
||||
# of the operators here since they's have no access to the specific property).
|
||||
# of the operators here since they have no access to the specific property).
|
||||
operator_row.enabled = not (is_lib_override and key in rna_item.id_data.override_library.reference)
|
||||
|
||||
if use_edit:
|
||||
|
||||
@@ -106,7 +106,7 @@ def rna2xml(
|
||||
if issubclass(value_type, skip_classes):
|
||||
return
|
||||
|
||||
# XXX, fixme, pointcache has eternal nested pointer to itself.
|
||||
# XXX, FIXME, point-cache has eternal nested pointer to itself.
|
||||
if value == parent:
|
||||
return
|
||||
|
||||
|
||||
@@ -267,7 +267,7 @@ def any_except(*args):
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# Keymap Item Wrappers
|
||||
# Key-map Item Wrappers
|
||||
|
||||
def op_menu(menu, kmi_args):
|
||||
return ("wm.call_menu", kmi_args, {"properties": [("name", menu)]})
|
||||
@@ -918,7 +918,7 @@ def km_view2d(_params):
|
||||
)
|
||||
|
||||
items.extend([
|
||||
# Scrollbars
|
||||
# Scroll-bars.
|
||||
("view2d.scroller_activate", {"type": 'LEFTMOUSE', "value": 'PRESS'}, None),
|
||||
("view2d.scroller_activate", {"type": 'MIDDLEMOUSE', "value": 'PRESS'}, None),
|
||||
# Pan/scroll
|
||||
@@ -960,7 +960,7 @@ def km_view2d_buttons_list(_params):
|
||||
)
|
||||
|
||||
items.extend([
|
||||
# Scrollbars
|
||||
# Scroll-bars.
|
||||
("view2d.scroller_activate", {"type": 'LEFTMOUSE', "value": 'PRESS'}, None),
|
||||
("view2d.scroller_activate", {"type": 'MIDDLEMOUSE', "value": 'PRESS'}, None),
|
||||
# Pan scroll
|
||||
@@ -5717,7 +5717,7 @@ def km_edit_armature(params):
|
||||
return keymap
|
||||
|
||||
|
||||
# Metaball edit mode.
|
||||
# Meta-ball edit mode.
|
||||
def km_edit_metaball(params):
|
||||
items = []
|
||||
keymap = (
|
||||
@@ -6743,7 +6743,7 @@ def km_generic_gizmo_tweak_modal_map(_params):
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# Popup Keymaps
|
||||
# Popup Key-maps
|
||||
|
||||
def km_popup_toolbar(_params):
|
||||
return (
|
||||
@@ -8472,7 +8472,7 @@ def generate_keymaps(params=None):
|
||||
km_generic_gizmo_select(params),
|
||||
km_generic_gizmo_tweak_modal_map(params),
|
||||
|
||||
# Pop-Up Keymaps.
|
||||
# Pop-Up Key-maps.
|
||||
km_popup_toolbar(params),
|
||||
|
||||
# Tool System.
|
||||
|
||||
@@ -315,7 +315,7 @@ def km_view2d(params):
|
||||
)
|
||||
|
||||
items.extend([
|
||||
# Scrollbars
|
||||
# Scroll-bars.
|
||||
("view2d.scroller_activate", {"type": 'LEFTMOUSE', "value": 'PRESS'}, None),
|
||||
("view2d.scroller_activate", {"type": 'MIDDLEMOUSE', "value": 'PRESS'}, None),
|
||||
# Pan/scroll
|
||||
@@ -359,7 +359,7 @@ def km_view2d_buttons_list(params):
|
||||
)
|
||||
|
||||
items.extend([
|
||||
# Scrollbars
|
||||
# Scroll-bars.
|
||||
("view2d.scroller_activate", {"type": 'LEFTMOUSE', "value": 'PRESS'}, None),
|
||||
("view2d.scroller_activate", {"type": 'MIDDLEMOUSE', "value": 'PRESS'}, None),
|
||||
# Pan scroll
|
||||
@@ -3673,7 +3673,8 @@ def km_sculpt(params):
|
||||
("wm.context_toggle", {"type": 'L', "value": 'PRESS'},
|
||||
{"properties": [("data_path", 'tool_settings.sculpt.brush.use_smooth_stroke')]}),
|
||||
# Tools
|
||||
# This is the only mode without an Annotate shortcut. The multires shortcuts took precedence instead.
|
||||
# This is the only mode without an Annotate shortcut.
|
||||
# The multi-resolution shortcuts took precedence instead.
|
||||
op_tool_cycle("builtin.box_mask", {"type": 'Q', "value": 'PRESS'}),
|
||||
op_tool_cycle("builtin.move", {"type": 'W', "value": 'PRESS'}),
|
||||
op_tool_cycle("builtin.rotate", {"type": 'E', "value": 'PRESS'}),
|
||||
@@ -4268,7 +4269,7 @@ def km_transform_modal_map(_params):
|
||||
|
||||
|
||||
# ------------------------------------------------------------------------------
|
||||
# Tool System Keymaps
|
||||
# Tool System Key-maps
|
||||
#
|
||||
# Named are auto-generated based on the tool name and it's toolbar.
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ def update_factory_startup_screens():
|
||||
space = area.spaces.active
|
||||
space.context = 'TOOL'
|
||||
elif area.type == 'DOPESHEET_EDITOR':
|
||||
# Open sidebar in Dopesheet.
|
||||
# Open sidebar in Dope-sheet.
|
||||
space = area.spaces.active
|
||||
space.show_region_ui = True
|
||||
|
||||
|
||||
@@ -89,13 +89,13 @@ class ANIM_OT_keying_set_export(Operator):
|
||||
if ksp.id in id_to_paths_cache:
|
||||
continue
|
||||
|
||||
# - idtype_list is used to get the list of id-datablocks from
|
||||
# bpy.data.* since this info isn't available elsewhere
|
||||
# - id.bl_rna.name gives a name suitable for UI,
|
||||
# - `idtype_list` is used to get the list of ID-data-blocks from
|
||||
# `bpy.data.*` since this info isn't available elsewhere.
|
||||
# - `id.bl_rna.name` gives a name suitable for UI,
|
||||
# with a capitalized first letter, but we need
|
||||
# the plural form that's all lower case
|
||||
# the plural form that's all lower case.
|
||||
# - special handling is needed for "nested" ID-blocks
|
||||
# (e.g. nodetree in Material)
|
||||
# (e.g. node-tree in Material).
|
||||
if ksp.id.bl_rna.identifier.startswith("ShaderNodeTree"):
|
||||
# Find material or light using this node tree...
|
||||
id_bpy_path = "bpy.data.nodes[\"%s\"]"
|
||||
@@ -120,7 +120,7 @@ class ANIM_OT_keying_set_export(Operator):
|
||||
tip_("Could not find material or light using Shader Node Tree - %s") %
|
||||
(ksp.id))
|
||||
elif ksp.id.bl_rna.identifier.startswith("CompositorNodeTree"):
|
||||
# Find compositor nodetree using this node tree...
|
||||
# Find compositor node-tree using this node tree.
|
||||
for scene in bpy.data.scenes:
|
||||
if scene.node_tree == ksp.id:
|
||||
id_bpy_path = "bpy.data.scenes[\"%s\"].node_tree" % (scene.name)
|
||||
|
||||
@@ -85,7 +85,7 @@ class MeshMirrorUV(Operator):
|
||||
puvs_cpy[i] = tuple(uv.copy() for uv in puvs[i])
|
||||
puvsel[i] = (False not in
|
||||
(uv.select for uv in uv_loops[lstart:lend]))
|
||||
# Vert idx of the poly.
|
||||
# Vert index of the poly.
|
||||
vidxs[i] = tuple(l.vertex_index for l in loops[lstart:lend])
|
||||
pcents[i] = p.center
|
||||
# Preparing next step finding matching polys.
|
||||
|
||||
@@ -493,7 +493,7 @@ class QuickSmoke(ObjectModeOperator, Operator):
|
||||
|
||||
# Setup material
|
||||
|
||||
# Cycles and Eevee
|
||||
# Cycles and EEVEE.
|
||||
bpy.ops.object.material_slot_add()
|
||||
|
||||
mat = bpy.data.materials.new("Smoke Domain Material")
|
||||
|
||||
@@ -936,7 +936,7 @@ class PREFERENCES_OT_app_template_install(Operator):
|
||||
return {'CANCELLED'}
|
||||
|
||||
else:
|
||||
# Only support installing zipfiles
|
||||
# Only support installing zip-files.
|
||||
self.report({'WARNING'}, tip_("Expected a zip-file %r\n") % filepath)
|
||||
return {'CANCELLED'}
|
||||
|
||||
|
||||
@@ -2273,7 +2273,7 @@ class WM_OT_owner_disable(Operator):
|
||||
|
||||
|
||||
class WM_OT_tool_set_by_id(Operator):
|
||||
"""Set the tool by name (for keymaps)"""
|
||||
"""Set the tool by name (for key-maps)"""
|
||||
bl_idname = "wm.tool_set_by_id"
|
||||
bl_label = "Set Tool by Name"
|
||||
|
||||
@@ -2319,7 +2319,7 @@ class WM_OT_tool_set_by_id(Operator):
|
||||
|
||||
|
||||
class WM_OT_tool_set_by_index(Operator):
|
||||
"""Set the tool by index (for keymaps)"""
|
||||
"""Set the tool by index (for key-maps)"""
|
||||
bl_idname = "wm.tool_set_by_index"
|
||||
bl_label = "Set Tool by Index"
|
||||
index: IntProperty(
|
||||
|
||||
@@ -517,7 +517,7 @@ class GreasePencilMaterialsPanel:
|
||||
|
||||
row.template_list("GPENCIL_UL_matslots", "", ob, "material_slots", ob, "active_material_index", rows=rows)
|
||||
|
||||
# if topbar popover and brush pinned, disable
|
||||
# if top-bar popover and brush pinned, disable.
|
||||
if is_view3d and brush is not None:
|
||||
gp_settings = brush.gpencil_settings
|
||||
if gp_settings.use_material_pin:
|
||||
|
||||
@@ -878,7 +878,7 @@ class PHYSICS_PT_mesh(PhysicButtonsPanel, Panel):
|
||||
col.prop(domain, "mesh_concave_upper", text="Concavity Upper")
|
||||
col.prop(domain, "mesh_concave_lower", text="Lower")
|
||||
|
||||
# TODO (sebbas): for now just interpolate any upres grids, ie not sampling highres grids
|
||||
# TODO(@sebbas): for now just interpolate any up-resolution grids, ie not sampling high-resolution grids
|
||||
# col.prop(domain, "highres_sampling", text="Flow Sampling:")
|
||||
|
||||
if domain.cache_type == 'MODULAR':
|
||||
|
||||
@@ -328,7 +328,7 @@ class PHYSICS_PT_rigid_body_dynamics_deactivation(PHYSICS_PT_rigidbody_panel, Pa
|
||||
col = flow.column()
|
||||
col.prop(rbo, "deactivate_linear_velocity", text="Velocity Linear")
|
||||
col.prop(rbo, "deactivate_angular_velocity", text="Angular")
|
||||
# TODO: other params such as time?
|
||||
# TODO: other parameters such as time?
|
||||
|
||||
|
||||
classes = (
|
||||
|
||||
@@ -1900,7 +1900,7 @@ class CLIP_MT_view_pie(Menu):
|
||||
def poll(cls, context):
|
||||
space = context.space_data
|
||||
|
||||
# View operators are not yet implemented in Dopesheet mode.
|
||||
# View operators are not yet implemented in Dope-sheet mode.
|
||||
return space.view != 'DOPESHEET'
|
||||
|
||||
def draw(self, context):
|
||||
|
||||
@@ -39,7 +39,7 @@ def dopesheet_filter(layout, context):
|
||||
row.prop(dopesheet, "show_only_errors", text="")
|
||||
|
||||
#######################################
|
||||
# Dopesheet Filtering Popovers
|
||||
# Dope-sheet Filtering Popovers
|
||||
|
||||
# Generic Layout - Used as base for filtering popovers used in all animation editors
|
||||
# Used for DopeSheet, NLA, and Graph Editors
|
||||
@@ -62,7 +62,7 @@ class DopesheetFilterPopoverBase:
|
||||
|
||||
if is_nla:
|
||||
col.prop(dopesheet, "show_missing_nla", icon='NONE')
|
||||
else: # graph and dopesheet editors - F-Curves and drivers only
|
||||
else: # Graph and dope-sheet editors - F-Curves and drivers only.
|
||||
col.prop(dopesheet, "show_only_errors", icon='NONE')
|
||||
|
||||
# Name/Membership Filters
|
||||
|
||||
@@ -1335,7 +1335,7 @@ class IMAGE_PT_uv_sculpt_brush_settings(Panel, ImagePaintPanel, UVSculptPanel):
|
||||
|
||||
|
||||
class IMAGE_PT_uv_sculpt_curve(Panel, FalloffPanel, ImagePaintPanel, UVSculptPanel):
|
||||
bl_context = ".uv_sculpt" # dot on purpose (access from topbar)
|
||||
bl_context = ".uv_sculpt" # Dot on purpose (access from top-bar).
|
||||
bl_parent_id = "IMAGE_PT_uv_sculpt_brush_settings"
|
||||
bl_category = "Tool"
|
||||
bl_label = "Falloff"
|
||||
@@ -1343,7 +1343,7 @@ class IMAGE_PT_uv_sculpt_curve(Panel, FalloffPanel, ImagePaintPanel, UVSculptPan
|
||||
|
||||
|
||||
class IMAGE_PT_uv_sculpt_options(Panel, ImagePaintPanel, UVSculptPanel):
|
||||
bl_context = ".uv_sculpt" # dot on purpose (access from topbar)
|
||||
bl_context = ".uv_sculpt" # Dot on purpose (access from top-bar).
|
||||
bl_category = "Tool"
|
||||
bl_label = "Options"
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ class NODE_HT_header(Header):
|
||||
|
||||
NODE_MT_editor_menus.draw_collapsible(context, layout)
|
||||
|
||||
# No shader nodes for Eevee lights
|
||||
# No shader nodes for EEVEE lights.
|
||||
if snode_id and not (context.engine == 'BLENDER_EEVEE' and ob_type == 'LIGHT'):
|
||||
row = layout.row()
|
||||
row.prop(snode_id, "use_nodes")
|
||||
|
||||
@@ -266,7 +266,7 @@ class ToolSelectPanelHelper:
|
||||
# so if item is still a function (e.g._defs_XXX.generate_from_brushes)
|
||||
# seems like we cannot expand here (have no context yet)
|
||||
# if we yield None here, this will risk running into duplicate tool bl_idname [in register_tool()]
|
||||
# but still better than erroring out
|
||||
# but still better than raising an error to the user.
|
||||
@staticmethod
|
||||
def _tools_flatten(tools):
|
||||
for item_parent in tools:
|
||||
@@ -534,7 +534,7 @@ class ToolSelectPanelHelper:
|
||||
def keymap_ui_hierarchy(cls, context_mode):
|
||||
# See: bpy_extras.keyconfig_utils
|
||||
|
||||
# Keymaps may be shared, don't show them twice.
|
||||
# Key-maps may be shared, don't show them twice.
|
||||
visited = set()
|
||||
|
||||
for context_mode_test, tools in cls.tools_all():
|
||||
|
||||
@@ -503,10 +503,10 @@ class TOPBAR_MT_file_export(Menu):
|
||||
"wm.usd_export", text="Universal Scene Description (.usd*)")
|
||||
|
||||
if bpy.app.build_options.io_gpencil:
|
||||
# Pugixml lib dependency
|
||||
# PUGIXML library dependency.
|
||||
if bpy.app.build_options.pugixml:
|
||||
self.layout.operator("wm.gpencil_export_svg", text="Grease Pencil as SVG")
|
||||
# Haru lib dependency
|
||||
# HARU library dependency.
|
||||
if bpy.app.build_options.haru:
|
||||
self.layout.operator("wm.gpencil_export_pdf", text="Grease Pencil as PDF")
|
||||
|
||||
|
||||
@@ -707,7 +707,7 @@ class VIEW3D_HT_header(Header):
|
||||
# (because internal RNA array iterator will free everything immediately...).
|
||||
# XXX This is an RNA internal issue, not sure how to fix it.
|
||||
# Note: Tried to add an accessor to get translated UI strings instead of manual call
|
||||
# to pgettext_iface below, but this fails because translated enumitems
|
||||
# to pgettext_iface below, but this fails because translated enum-items
|
||||
# are always dynamically allocated.
|
||||
act_mode_item = bpy.types.Object.bl_rna.properties["mode"].enum_items[object_mode]
|
||||
act_mode_i18n_context = bpy.types.Object.bl_rna.properties["mode"].translation_context
|
||||
@@ -795,7 +795,7 @@ class VIEW3D_HT_header(Header):
|
||||
subrow.enabled = not gpd.use_curve_edit
|
||||
subrow.prop_enum(tool_settings, "gpencil_selectmode_edit", text="", value='SEGMENT')
|
||||
|
||||
# Curve edit submode
|
||||
# Curve edit sub-mode.
|
||||
row = layout.row(align=True)
|
||||
row.prop(gpd, "use_curve_edit", text="",
|
||||
icon='IPO_BEZIER')
|
||||
@@ -866,7 +866,7 @@ class VIEW3D_HT_header(Header):
|
||||
|
||||
if object_mode == 'PAINT_GPENCIL':
|
||||
# FIXME: this is bad practice!
|
||||
# Tool options are to be displayed in the topbar.
|
||||
# Tool options are to be displayed in the top-bar.
|
||||
if context.workspace.tools.from_space_view3d_mode(object_mode).idname == "builtin_brush.Draw":
|
||||
settings = tool_settings.gpencil_sculpt.guide
|
||||
row = layout.row(align=True)
|
||||
@@ -6224,7 +6224,7 @@ class VIEW3D_PT_shading_lighting(Panel):
|
||||
system = prefs.system
|
||||
|
||||
if not system.use_studio_light_edit:
|
||||
sub.scale_y = 0.6 # smaller studiolight preview
|
||||
sub.scale_y = 0.6 # Smaller studio-light preview.
|
||||
sub.template_icon_view(shading, "studio_light", scale_popup=3.0)
|
||||
else:
|
||||
sub.prop(
|
||||
|
||||
@@ -743,7 +743,7 @@ class VIEW3D_PT_tools_weight_gradient(Panel, View3DPaintPanel):
|
||||
# `bl_context = ".weightpaint"` # dot on purpose (access from top-bar)
|
||||
bl_label = "Falloff"
|
||||
bl_options = {'DEFAULT_CLOSED'}
|
||||
# also dont draw as an extra panel in the sidebar (already included in the Brush settings)
|
||||
# Also don't draw as an extra panel in the sidebar (already included in the Brush settings).
|
||||
bl_space_type = 'TOPBAR'
|
||||
bl_region_type = 'HEADER'
|
||||
|
||||
@@ -1455,7 +1455,7 @@ class GreasePencilPaintPanel:
|
||||
if context.gpencil_data is None:
|
||||
return False
|
||||
|
||||
# Hide for tools not using bruhses
|
||||
# Hide for tools not using brushes.
|
||||
if tool_use_brush(context) is False:
|
||||
return False
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ class ExportSomeData(Operator, ExportHelper):
|
||||
bl_idname = "export_test.some_data" # important since its how bpy.ops.import_test.some_data is constructed
|
||||
bl_label = "Export Some Data"
|
||||
|
||||
# ExportHelper mixin class uses this
|
||||
# ExportHelper mix-in class uses this.
|
||||
filename_ext = ".txt"
|
||||
|
||||
filter_glob: StringProperty(
|
||||
|
||||
@@ -25,7 +25,7 @@ class ImportSomeData(Operator, ImportHelper):
|
||||
bl_idname = "import_test.some_data" # important since its how bpy.ops.import_test.some_data is constructed
|
||||
bl_label = "Import Some Data"
|
||||
|
||||
# ImportHelper mixin class uses this
|
||||
# ImportHelper mix-in class uses this.
|
||||
filename_ext = ".txt"
|
||||
|
||||
filter_glob: StringProperty(
|
||||
|
||||
@@ -64,7 +64,7 @@ def main(context, event):
|
||||
# we could do lots of stuff but for the example just select.
|
||||
if best_obj is not None:
|
||||
# for selection etc. we need the original object,
|
||||
# evaluated objects are not in viewlayer
|
||||
# evaluated objects are not in view-layer.
|
||||
best_original = best_obj.original
|
||||
best_original.select_set(True)
|
||||
context.view_layer.objects.active = best_original
|
||||
|
||||
@@ -74,7 +74,7 @@ typedef void (*ConstraintIDFunc)(struct bConstraint *con,
|
||||
* structs.
|
||||
*/
|
||||
typedef struct bConstraintTypeInfo {
|
||||
/* admin/ident */
|
||||
/* Admin/identity. */
|
||||
/** CONSTRAINT_TYPE_### */
|
||||
short type;
|
||||
/** size in bytes of the struct */
|
||||
|
||||
@@ -47,7 +47,7 @@ struct bContext;
|
||||
* as you'll have to edit quite a few (#FMODIFIER_NUM_TYPES) of these structs.
|
||||
*/
|
||||
typedef struct FModifierTypeInfo {
|
||||
/* admin/ident */
|
||||
/* Admin/identity. */
|
||||
/** #FMODIFIER_TYPE_* */
|
||||
short type;
|
||||
/** size in bytes of the struct. */
|
||||
|
||||
@@ -129,12 +129,12 @@ void BKE_libblock_remap_multiple(struct Main *bmain,
|
||||
const int remap_flags);
|
||||
|
||||
/**
|
||||
* Bare raw remapping of IDs, with no other processing than actually updating the ID pointers. No
|
||||
* usercount, direct vs indirect linked status update, depsgraph tagging, etc.
|
||||
* Bare raw remapping of IDs, with no other processing than actually updating the ID pointers.
|
||||
* No user-count, direct vs indirect linked status update, depsgraph tagging, etc.
|
||||
*
|
||||
* This is way more efficient than regular remapping from #BKE_libblock_remap_multiple & co, but it
|
||||
* implies that calling code handles all the other aspects described above. This is typically the
|
||||
* case e.g. in readfile process.
|
||||
* case e.g. in read-file process.
|
||||
*
|
||||
* WARNING: This call will likely leave the given BMain in invalid state in many aspects. */
|
||||
void BKE_libblock_remap_multiple_raw(struct Main *bmain,
|
||||
|
||||
@@ -83,7 +83,7 @@ typedef struct SpaceType {
|
||||
/* called when the mouse moves out of the area */
|
||||
void (*deactivate)(struct ScrArea *area);
|
||||
|
||||
/* refresh context, called after filereads, ED_area_tag_refresh() */
|
||||
/** Refresh context, called after file-reads, #ED_area_tag_refresh(). */
|
||||
void (*refresh)(const struct bContext *C, struct ScrArea *area);
|
||||
|
||||
/* after a spacedata copy, an init should result in exact same situation */
|
||||
|
||||
@@ -1710,9 +1710,9 @@ static const DupliGenerator *get_dupli_generator(const DupliContext *ctx)
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
/* Metaball objects can't create instances, but the dupli system is used to "instance" their
|
||||
/* Meta-ball objects can't create instances, but the dupli system is used to "instance" their
|
||||
* evaluated mesh to render engines. We need to exit early to avoid recursively instancing the
|
||||
* evaluated metaball mesh on metaball instances that already contribute to the basis. */
|
||||
* evaluated meta-ball mesh on meta-ball instances that already contribute to the basis. */
|
||||
if (ctx->object->type == OB_MBALL && ctx->level > 0) {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
@@ -83,7 +83,7 @@ void BLO_memfile_chunk_add(MemFileWriteData *mem_data, const char *buf, size_t s
|
||||
extern void BLO_memfile_free(MemFile *memfile);
|
||||
/**
|
||||
* Result is that 'first' is being freed.
|
||||
* to keep list of memfiles consistent, 'first' is always first in list.
|
||||
* To keep the #MemFile linked list of consistent, `first` is always first in list.
|
||||
*/
|
||||
extern void BLO_memfile_merge(MemFile *first, MemFile *second);
|
||||
/**
|
||||
|
||||
@@ -294,7 +294,7 @@ class ExecutionGroup {
|
||||
|
||||
/**
|
||||
* \brief compose multiple chunks into a single chunk
|
||||
* \return Memorybuffer *consolidated chunk
|
||||
* \return `(Memorybuffer *)` consolidated chunk
|
||||
*/
|
||||
MemoryBuffer *construct_consolidated_memory_buffer(MemoryProxy &memory_proxy, rcti &rect);
|
||||
|
||||
@@ -308,7 +308,7 @@ class ExecutionGroup {
|
||||
* \brief get all inputbuffers needed to calculate an chunk
|
||||
* \note all inputbuffers must be executed
|
||||
* \param chunk_number: the chunk to be calculated
|
||||
* \return (MemoryBuffer **) the inputbuffers
|
||||
* \return `(MemoryBuffer **)` the input-buffers.
|
||||
*/
|
||||
MemoryBuffer **get_input_buffers_opencl(int chunk_number);
|
||||
|
||||
|
||||
@@ -91,7 +91,7 @@ float ambient_occlusion_eval(vec3 normal,
|
||||
const float inverted,
|
||||
const float sample_count);
|
||||
|
||||
/* WORKAROUND: Included later with libs. This is because we are mixing include systems. */
|
||||
/* WORKAROUND: Included later with libraries. This is because we are mixing include systems. */
|
||||
vec3 safe_normalize(vec3 N);
|
||||
float fast_sqrt(float a);
|
||||
vec3 cameraVec(vec3 P);
|
||||
|
||||
@@ -18,7 +18,7 @@ extern const float ltc_mat_ggx[64][64][4];
|
||||
extern const float ltc_mag_ggx[64][64][2];
|
||||
/* Precomputed Disk integral for different elevation angles and solid angle. */
|
||||
extern const float ltc_disk_integral[64][64][1];
|
||||
/* Precomputed integrated split fresnel term of the GGX brdf. */
|
||||
/* Precomputed integrated split fresnel term of the GGX BRDF. */
|
||||
extern const float bsdf_split_sum_ggx[64][64][2];
|
||||
/* Precomputed reflectance and transmission of glass material. */
|
||||
extern const float btdf_split_sum_ggx[16][64][64][2];
|
||||
|
||||
@@ -92,7 +92,7 @@ class Precompute {
|
||||
|
||||
/**
|
||||
* Write a the content of a texture as a C++ header file array.
|
||||
* The content is to be copied to `eevee_lut.cc` and formated with `make format`.
|
||||
* The content is to be copied to `eevee_lut.cc` and formatted with `make format`.
|
||||
*/
|
||||
template<typename VecT>
|
||||
static void write_to_header(StringRefNull name,
|
||||
@@ -167,4 +167,4 @@ class Precompute {
|
||||
}
|
||||
};
|
||||
|
||||
} // namespace blender::eevee
|
||||
} // namespace blender::eevee
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
* SPDX-License-Identifier: GPL-2.0-or-later */
|
||||
|
||||
/**
|
||||
* Create the Zbins from Z-sorted lights.
|
||||
* Create the Z-bins from Z-sorted lights.
|
||||
* Perform min-max operation in LDS memory for speed.
|
||||
* For this reason, we only dispatch 1 thread group.
|
||||
*/
|
||||
@@ -52,7 +52,7 @@ void main()
|
||||
}
|
||||
barrier();
|
||||
|
||||
/* Write result to zbins buffer. Pack min & max into 1 uint. */
|
||||
/* Write result to Z-bins buffer. Pack min & max into 1 `uint`. */
|
||||
for (uint i = 0u, l = zbin_local; i < zbin_iter; i++, l++) {
|
||||
out_zbin_buf[l] = (zbin_max[l] << 16u) | (zbin_min[l] & 0xFFFFu);
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ ivec3 lightprobe_irradiance_grid_brick_coord(vec3 lP)
|
||||
}
|
||||
|
||||
/**
|
||||
* Return the local coordinated of the shading point inside the brick in unormalized coordinate.
|
||||
* Return the local coordinated of the shading point inside the brick in unnormalized coordinate.
|
||||
*/
|
||||
vec3 lightprobe_irradiance_grid_brick_local_coord(IrradianceGridData grid_data,
|
||||
vec3 lP,
|
||||
|
||||
@@ -209,7 +209,7 @@ Closure closure_eval(ClosureDiffuse diffuse,
|
||||
return Closure(0);
|
||||
}
|
||||
|
||||
/* Noop since we are sampling closures. */
|
||||
/* NOP since we are sampling closures. */
|
||||
Closure closure_add(Closure cl1, Closure cl2)
|
||||
{
|
||||
return Closure(0);
|
||||
@@ -551,7 +551,7 @@ vec4 attr_load_color_post(vec4 attr)
|
||||
return attr;
|
||||
}
|
||||
|
||||
#else /* Noop for any other surface. */
|
||||
#else /* NOP for any other surface. */
|
||||
|
||||
float attr_load_temperature_post(float attr)
|
||||
{
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
* `[--xxxxx---------]`
|
||||
* After page free step: 2 cached pages were removed (r), 3 pages were inserted in the cache (i).
|
||||
* `[--xrxrxiii------]`
|
||||
* After page defrag step: The buffer is compressed into only 6 pages.
|
||||
* After page defragment step: The buffer is compressed into only 6 pages.
|
||||
* `[----xxxxxx------]`
|
||||
*/
|
||||
|
||||
@@ -77,11 +77,11 @@ void main()
|
||||
find_first_valid(src, end);
|
||||
}
|
||||
|
||||
/* Defrag page in "old" range. */
|
||||
/* Defragment page in "old" range. */
|
||||
bool is_empty = (src == end);
|
||||
if (!is_empty) {
|
||||
/* `page_cached_end` refers to the next empty slot.
|
||||
* Decrement by one to refer to the first slot we can defrag. */
|
||||
* Decrement by one to refer to the first slot we can defragment. */
|
||||
for (uint dst = end - 1; dst > src; dst--) {
|
||||
/* Find hole. */
|
||||
if (pages_cached_buf[dst % max_page].x != uint(-1)) {
|
||||
|
||||
@@ -70,7 +70,7 @@ void shadow_page_cache_append(inout ShadowTileData tile, uint tile_index)
|
||||
{
|
||||
assert(tile.is_allocated);
|
||||
|
||||
/* The page_cached_next is also wrapped in the defrag phase to avoid unsigned overflow. */
|
||||
/* The page_cached_next is also wrapped in the defragment phase to avoid unsigned overflow. */
|
||||
uint index = atomicAdd(pages_infos_buf.page_cached_next, 1u) % uint(SHADOW_MAX_PAGE);
|
||||
/* Insert in heap. */
|
||||
pages_cached_buf[index] = uvec2(shadow_page_pack(tile.page), tile_index);
|
||||
@@ -93,7 +93,7 @@ void shadow_page_cache_remove(inout ShadowTileData tile)
|
||||
tile.cache_index = uint(-1);
|
||||
tile.is_cached = false;
|
||||
tile.is_allocated = true;
|
||||
/* Remove from heap. Leaves hole in the buffer. This is handled by the defrag phase. */
|
||||
/* Remove from heap. Leaves hole in the buffer. This is handled by the defragment phase. */
|
||||
pages_cached_buf[index] = uvec2(-1);
|
||||
}
|
||||
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
*
|
||||
* Any updated shadow caster needs to tag the shadow map tiles it was in and is now into.
|
||||
* This is done in 2 pass of this same shader. One for past object bounds and one for new object
|
||||
* bounds. The bounding boxes are roughly software rasterized (just a plain rect) in order to tag
|
||||
* the appropriate tiles.
|
||||
* bounds. The bounding boxes are roughly software rasterized (just a plain rectangle) in order to
|
||||
* tag the appropriate tiles.
|
||||
*/
|
||||
|
||||
#pragma BLENDER_REQUIRE(common_intersect_lib.glsl)
|
||||
|
||||
@@ -43,7 +43,7 @@ void main()
|
||||
|
||||
int clip_index = tilemap.clip_data_index;
|
||||
if (clip_index == -1) {
|
||||
/* Noop. This is the case for unused tile-maps that are getting pushed to the free heap. */
|
||||
/* NOP. This is the case for unused tile-maps that are getting pushed to the free heap. */
|
||||
}
|
||||
else if (tilemap.projection_type != SHADOW_PROJECTION_CUBEFACE) {
|
||||
ShadowTileMapClip clip_data = tilemaps_clip_buf[clip_index];
|
||||
|
||||
@@ -9,6 +9,6 @@ void main()
|
||||
/* No color output, only depth (line below is implicit). */
|
||||
// gl_FragDepth = gl_FragCoord.z;
|
||||
|
||||
/* This is optimized to noop in the non select case. */
|
||||
/* This is optimized to NOP in the non select case. */
|
||||
select_id_output(select_id);
|
||||
}
|
||||
|
||||
@@ -79,9 +79,11 @@ struct TransDataExtension {
|
||||
/** Use instead of #TransData.smtx,
|
||||
* It is the same but without the #Bone.bone_mat, see #TD_PBONE_LOCAL_MTX_C. */
|
||||
float l_smtx[3][3];
|
||||
/** The rotscale matrix of pose bone, to allow using snap-align in translation mode,
|
||||
* when #TransData.mtx is the loc pose bone matrix (and hence can't be used to apply
|
||||
* rotation in some cases, namely when a bone is in "No-Local" or "Hinge" mode)... */
|
||||
/**
|
||||
* The rotation & scale matrix of pose bone, to allow using snap-align in translation mode,
|
||||
* when #TransData.mtx is the location pose bone matrix (and hence can't be used to apply
|
||||
* rotation in some cases, namely when a bone is in "No-Local" or "Hinge" mode).
|
||||
*/
|
||||
float r_mtx[3][3];
|
||||
/** Inverse of previous one. */
|
||||
float r_smtx[3][3];
|
||||
|
||||
@@ -547,7 +547,7 @@ typedef enum eGPUTextureUsage {
|
||||
/* Whether the texture needs to be read from by the CPU. */
|
||||
GPU_TEXTURE_USAGE_HOST_READ = (1 << 4),
|
||||
/* When used, the texture will not have any backing storage and can solely exist as a virtual
|
||||
* framebuffer attachment. */
|
||||
* frame-buffer attachment. */
|
||||
GPU_TEXTURE_USAGE_MEMORYLESS = (1 << 5),
|
||||
/* Create a texture whose usage cannot be defined prematurely.
|
||||
* This is unoptimized and should not be used. */
|
||||
|
||||
@@ -295,7 +295,7 @@ bool MTLShader::finalize(const shader::ShaderCreateInfo *info)
|
||||
#if defined(MAC_OS_X_VERSION_11_0) && __MAC_OS_X_VERSION_MAX_ALLOWED > MAC_OS_X_VERSION_11_0
|
||||
if (@available(macOS 11.00, *)) {
|
||||
/* Raster order groups for tile data in struct require Metal 2.3.
|
||||
* Retianing Metal 2.2. for old shaders to maintain backwards
|
||||
* Retaining Metal 2.2. for old shaders to maintain backwards
|
||||
* compatibility for existing features. */
|
||||
if (info->fragment_tile_inputs_.size() > 0) {
|
||||
options.languageVersion = MTLLanguageVersion2_3;
|
||||
|
||||
@@ -61,7 +61,7 @@ func_lines.append(f"void {function_to_generate}();")
|
||||
func_lines.append(f"void {function_to_generate}()")
|
||||
func_lines.append("{")
|
||||
|
||||
# Use a single regular expression to search for opening namespaces, closing namespaces
|
||||
# Use a single regular expression to search for opening name-spaces, closing name-spaces
|
||||
# and macro invocations. This makes it easy to iterate over the matches in order.
|
||||
re_namespace_begin = r"^namespace ([\w:]+) \{"
|
||||
re_namespace_end = r"^\} // namespace ([\w:]+)"
|
||||
@@ -74,24 +74,24 @@ for path in source_cc_files:
|
||||
with open(path, "r", encoding="utf-8") as fh:
|
||||
code = fh.read()
|
||||
|
||||
# Keeps track of the current namespace we're in.
|
||||
# Keeps track of the current name-space we're in.
|
||||
namespace_parts = []
|
||||
|
||||
for match in re_all_compiled.finditer(code):
|
||||
if entered_namespace := match.group(2):
|
||||
# Enter a (nested) namespace.
|
||||
# Enter a (nested) name-space.
|
||||
namespace_parts += entered_namespace.split("::")
|
||||
elif exited_namespace := match.group(4):
|
||||
# Exit a (nested) namespace.
|
||||
# Exit a (nested) name-space.
|
||||
del namespace_parts[-len(exited_namespace.split("::")):]
|
||||
elif function_name := match.group(6):
|
||||
# Macro invocation in the current namespace.
|
||||
# Macro invocation in the current name-space.
|
||||
namespace_str = "::".join(namespace_parts)
|
||||
# Add suffix so that this refers to the function created by the macro.
|
||||
auto_run_name = function_name + discover_suffix
|
||||
|
||||
# Declare either outside of any named namespace or in a (nested) namespace.
|
||||
# Can't declare it in an anonymous namespace because that would make the
|
||||
# Declare either outside of any named name-space or in a (nested) name-space.
|
||||
# Can't declare it in an anonymous name-space because that would make the
|
||||
# declared function static.
|
||||
if namespace_str:
|
||||
decl_lines.append(f"namespace {namespace_str} {{")
|
||||
|
||||
@@ -354,8 +354,8 @@ def main() -> None:
|
||||
errs.reverse()
|
||||
for cf, i in errs:
|
||||
print("%s:%d" % (cf, i))
|
||||
# Write a 'sed' script, useful if we get a lot of these
|
||||
# print("sed '%dd' '%s' > '%s.tmp' ; mv '%s.tmp' '%s'" % (i, cf, cf, cf, cf))
|
||||
# Write a `sed` script, useful if we get a lot of theses:
|
||||
# `print("sed '%dd' '%s' > '%s.tmp' ; mv '%s.tmp' '%s'" % (i, cf, cf, cf, cf))`
|
||||
|
||||
if is_err:
|
||||
raise Exception("CMake references missing files, aborting!")
|
||||
|
||||
@@ -95,7 +95,7 @@ def main() -> None:
|
||||
f,
|
||||
*extra_args,
|
||||
)
|
||||
# p = subprocess.Popen(cmd, env=extra_env, stdout=sys.stdout, stderr=sys.stderr)
|
||||
# `p = subprocess.Popen(cmd, env=extra_env, stdout=sys.stdout, stderr=sys.stderr)`
|
||||
|
||||
if extra_env:
|
||||
for k, v in extra_env.items():
|
||||
|
||||
@@ -171,7 +171,7 @@ def hash_of_file_and_len(fp: str) -> Tuple[bytes, int]:
|
||||
import re
|
||||
re_vars = re.compile("[A-Za-z]+")
|
||||
|
||||
# First remove this from comments, so we don't spell check example code, doxygen commands, etc.
|
||||
# First remove this from comments, so we don't spell check example code, DOXYGEN commands, etc.
|
||||
re_ignore = re.compile(
|
||||
r'('
|
||||
|
||||
@@ -184,17 +184,17 @@ re_ignore = re.compile(
|
||||
# Convention for TODO/FIXME messages: TODO(my name) OR FIXME(name+name) OR XXX(some-name) OR NOTE(name/other-name):
|
||||
r"\b(TODO|FIXME|XXX|NOTE|WARNING)\(@?[\w\s\+\-/]+\)|"
|
||||
|
||||
# Doxygen style: <pre> ... </pre>
|
||||
# DOXYGEN style: <pre> ... </pre>
|
||||
r"<pre>.+</pre>|"
|
||||
# Doxygen style: \code ... \endcode
|
||||
# DOXYGEN style: \code ... \endcode
|
||||
r"\s+\\code\b.+\s\\endcode\b|"
|
||||
# Doxygen style #SOME_CODE.
|
||||
# DOXYGEN style #SOME_CODE.
|
||||
r'#\S+|'
|
||||
# Doxygen commands: \param foo
|
||||
# DOXYGEN commands: \param foo
|
||||
r"\\(section|subsection|subsubsection|defgroup|ingroup|addtogroup|param|tparam|page|a|see)\s+\S+|"
|
||||
# Doxygen commands without any arguments after them: \command
|
||||
# DOXYGEN commands without any arguments after them: \command
|
||||
r"\\(retval|todo|name)\b|"
|
||||
# Doxygen 'param' syntax used rarely: \param foo[in,out]
|
||||
# DOXYGEN 'param' syntax used rarely: \param foo[in,out]
|
||||
r"\\param\[[a-z,]+\]\S*|"
|
||||
|
||||
# Words containing underscores: a_b
|
||||
|
||||
@@ -39,6 +39,7 @@ dict_custom = {
|
||||
"adjugate",
|
||||
"affectable",
|
||||
"alignable",
|
||||
"branchless",
|
||||
"allocatable",
|
||||
"allocator",
|
||||
"allocators",
|
||||
@@ -152,6 +153,7 @@ dict_custom = {
|
||||
"generatrix",
|
||||
"glitchy",
|
||||
"haptics",
|
||||
"headerless",
|
||||
"highlightable",
|
||||
"homogenous",
|
||||
"ideographic",
|
||||
@@ -192,6 +194,7 @@ dict_custom = {
|
||||
"losslessly",
|
||||
"luminances",
|
||||
"mappable",
|
||||
"memoryless",
|
||||
"merchantability",
|
||||
"mergeable",
|
||||
"minimalistic",
|
||||
@@ -259,6 +262,7 @@ dict_custom = {
|
||||
"prefilter",
|
||||
"prefiltered",
|
||||
"prefiltering",
|
||||
"preloading",
|
||||
"premutliplied",
|
||||
"preorder",
|
||||
"prepend",
|
||||
@@ -363,6 +367,7 @@ dict_custom = {
|
||||
"tokenizing",
|
||||
"transcode",
|
||||
"transmissive",
|
||||
"triaging",
|
||||
"triangulations",
|
||||
"triangulator",
|
||||
"trilinear",
|
||||
@@ -823,7 +828,8 @@ dict_ignore_hyphenated_suffix = {
|
||||
files_ignore = {
|
||||
"tools/utils_doc/rna_manual_reference_updater.py", # Contains language ID references.
|
||||
|
||||
# Maintained by 3rd party.
|
||||
# Maintained by 3rd parties.
|
||||
"source/blender/blenlib/intern/fnmatch.c",
|
||||
"source/blender/draw/intern/shaders/common_fxaa_lib.glsl",
|
||||
"source/blender/gpu/shaders/common/gpu_shader_smaa_lib.glsl",
|
||||
}
|
||||
|
||||
@@ -91,7 +91,7 @@ def gitea_json_issues_search(
|
||||
:param labels: comma separated list of labels. Fetch only issues that have any of this labels. Non existent labels are discarded.
|
||||
:param created: filter (issues / pulls) created by you, default is false.
|
||||
:param reviewed: filter pulls reviewed by you, default is false.
|
||||
:param access_token: token generated by the Gitea API.
|
||||
:param access_token: token generated by the GITEA API.
|
||||
:return: List of issues or pulls.
|
||||
"""
|
||||
|
||||
@@ -168,7 +168,7 @@ def gitea_json_issue_events_filter(
|
||||
return result
|
||||
|
||||
|
||||
# WORKAROUND: This function doesn't involve Gitea, and the obtained username may not match the username used in Gitea.
|
||||
# WORKAROUND: This function doesn't involve GITEA, and the obtained username may not match the username used in GITEA.
|
||||
# However, it provides an option to fetch the configured username from the local Git,
|
||||
# in case the user does not explicitly supply the username.
|
||||
def git_username_detect():
|
||||
|
||||
@@ -28,7 +28,7 @@ GIT_SUBJECT_COMMON_PREFIX = b"Subject: [PATCH] "
|
||||
# Marker which indicates begin of new file in the patch set.
|
||||
GIT_FILE_SECTION_MARKER = b"diff --git"
|
||||
|
||||
# Marker of the end of the patchset.
|
||||
# Marker of the end of the patch-set.
|
||||
GIT_PATCHSET_END_MARKER = b"-- "
|
||||
|
||||
# Prefix of topic to be omitted
|
||||
|
||||
@@ -30,7 +30,7 @@ class App:
|
||||
|
||||
self.state = []
|
||||
self.states = 256
|
||||
self.laststate = 2 # 0=Black, 1=White, 2=Transp.
|
||||
self.laststate = 2 # 0=Black, 1=White, 2=Transparent.
|
||||
|
||||
self.size = 16
|
||||
self.gridsz = 20
|
||||
|
||||
@@ -100,7 +100,7 @@ class AttributeBuilder:
|
||||
return attr_obj
|
||||
|
||||
# def __setattr__(self, attr, value):
|
||||
# setatte
|
||||
# pass
|
||||
|
||||
def __getitem__(self, item):
|
||||
item_obj = NewAttr(self._attr + "[" + repr(item) + "]", item)
|
||||
|
||||
@@ -156,8 +156,9 @@ def main():
|
||||
arg_split += ["-ftree-vectorizer-verbose=1"]
|
||||
|
||||
arg_split += ["-S"]
|
||||
# arg_split += ["-masm=intel"] # optional
|
||||
# arg_split += ["-fverbose-asm"] # optional but handy
|
||||
if False:
|
||||
arg_split += ["-masm=intel"] # Optional.
|
||||
arg_split += ["-fverbose-asm"] # Optional but handy.
|
||||
else:
|
||||
sys.stderr.write(f"Compiler {COMPILER_ID!r} not supported")
|
||||
return
|
||||
|
||||
@@ -50,7 +50,7 @@ def sort_cmake_file_lists(fn: str, data_src: str) -> Optional[str]:
|
||||
# Headers.
|
||||
if l and os.path.isdir(os.path.join(fn_dir, l)):
|
||||
return True
|
||||
# Libs.
|
||||
# Libraries.
|
||||
if l.startswith(("bf_", "extern_")) and "." not in l and "/" not in l:
|
||||
return True
|
||||
return False
|
||||
|
||||
Reference in New Issue
Block a user