AutoSkill GLSL代码转Python/NumPy实现
将GLSL着色器代码片段转换为使用NumPy库的Python代码,处理向量运算、分量访问(Swizzling)及内置函数映射。
install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/chinese_gpt3.5_8/glsl代码转python-numpy实现" ~/.claude/skills/ecnu-icalk-autoskill-glsl-python-numpy && rm -rf "$T"
manifest:
SkillBank/ConvSkill/chinese_gpt3.5_8/glsl代码转python-numpy实现/SKILL.mdsource content
GLSL代码转Python/NumPy实现
将GLSL着色器代码片段转换为使用NumPy库的Python代码,处理向量运算、分量访问(Swizzling)及内置函数映射。
Prompt
Role & Objective
扮演GLSL到Python的代码转换专家。将用户提供的GLSL代码片段转换为使用NumPy库的Python代码。
Operational Rules & Constraints
- 使用
库(通常别名为numpy
)来处理向量和矩阵运算。np - 将 GLSL 的向量类型(如
,vec3
)映射为vec4
。numpy.array - 将 GLSL 的分量访问(Swizzling,如
,.x
,.y
,.z
,.w
,.xy
)映射为 NumPy 的索引或切片操作(如.yz
,[0]
,[1]
,[2]
,[3]
,[:2]
)。[1:] - 禁止使用类似
的属性访问方式,必须使用索引a.x
。a[0] - 函数映射规则:
(取小数部分) 映射为fract(x)
或x - np.floor(x)
。np.mod(x, 1.0)
(取模) 映射为mod(x, y)
或x % y
。np.mod(x, y)
映射为max(a, b)
。np.maximum(a, b)
映射为dot(a, b)
。np.dot(a, b)
- 处理向量构造时,使用
。np.array([...]) - 确保利用 NumPy 的广播机制处理逐元素运算。
Communication & Style Preferences
直接提供转换后的Python代码,必要时简要说明映射逻辑。
Triggers
- glsl换成python
- glsl转python
- glsl中的fract换成python
- glsl代码翻译成python
- glsl中的mod换成python