base

警告

这部分内容涉及 JAnim 实现原理,可能较为复杂,若没有研究源码的需求,你应酌情阅读

class janim.render.base.Programs(cache: 'dict[Any, mgl.Program | mgl.ComputeShader]' = <factory>, additional: 'list[mgl.Program]' = <factory>)

基类:object

cache: dict[Any, Program | ComputeShader]
additional: list[Program]
janim.render.base.get_programs(ctx: Context)
class janim.render.base.Renderer

基类:object

渲染器的基类

重写 render() 以实现具体功能

data_ctx: ContextVar = <ContextVar name='Renderer.data_ctx'>
render(item) None
static get_u_fix_in_frame(prog: Program) Uniform
static update_fix_in_frame(uniform: mgl.Uniform, item: Item) None
class janim.render.base.RenderData(*, ctx: Context, camera_info: CameraInfo, anti_alias_radius: float)

基类:object

在渲染过程中需要配置的属性

通过 Renderer.data_ctx 进行设置和获取

ctx: Context
camera_info: CameraInfo
anti_alias_radius: float
janim.render.base.create_context(**kwargs) Context