The cepl Reference Manual

This is the cepl Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 14:50:44 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 cepl

Fast lispy way to work with OpenGL

Author

Chris Bagley (Baggers) <>

License

BSD 2 Clause

Dependencies
  • cffi (system).
  • uiop (system).
  • cl-opengl (system).
  • cl-ppcre (system).
  • documentation-utils (system).
  • ieee-floats (system).
  • varjo (system).
  • bordeaux-threads (system).
  • cepl.build (system).
  • alexandria (system).
  • split-sequence (system).
  • float-features (system).
Source

cepl.asd.

Child Components

2.2 cepl.build

Common package and system behind CEPL’s profiling tools

Author

Chris Bagley <>

License

BSD 2 Clause

Dependency

alexandria (system).

Source

cepl.build.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 cepl/cepl.asd

Source

cepl.asd.

Parent Component

cepl (system).

ASDF Systems

cepl.


3.1.2 cepl.build/cepl.build.asd

Source

cepl.build.asd.

Parent Component

cepl.build (system).

ASDF Systems

cepl.build.


3.1.4 cepl/host/api-api.lisp

Dependency

package.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

register-host (function).

Internals

3.1.5 cepl/host/api-generics.lisp

Dependency

host/api-api.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

3.1.6 cepl/host/api-0.lisp

Dependency

host/api-generics.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.7 cepl/host/api-1.lisp

Dependency

host/api-0.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

api-1 (class).

Internals

3.1.8 cepl/host/api-2.lisp

Dependency

host/api-1.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

api-2 (class).

Internals

3.1.9 cepl/host/api-common.lisp

Dependency

host/api-2.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.10 cepl/core/ffi.lisp

Dependency

host/api-common.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.11 cepl/core/early.lisp

Dependency

core/ffi.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

+gl-enum-size+ (constant).


3.1.12 cepl/core/utils.lisp

Dependency

core/early.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Packages

defxstar-hidden.

Public Interface
Internals

3.1.13 cepl/project.lisp

Dependency

core/utils.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

make-project (function).

Internals

3.1.14 cepl/core/context/documentation-functions.lisp

Dependency

project.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.15 cepl/core/lifecycle.lisp

Dependency

core/context/documentation-functions.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.16 cepl/core/measurements/measurements.lisp

Dependency

core/lifecycle.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.17 cepl/core/memory/memory.lisp

Dependency

core/measurements/measurements.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.18 cepl/core/types/math.lisp

Dependency

core/memory/memory.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.19 cepl/core/types/cepl-types.lisp

Dependency

core/types/math.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.20 cepl/core/types/checks.lisp

Dependency

core/types/cepl-types.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.21 cepl/core/types/nulls-and-uninitialized.lisp

Dependency

core/types/checks.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.22 cepl/core/context/gl-context.lisp

Dependency

core/types/nulls-and-uninitialized.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.23 cepl/core/context/types.lisp

Dependency

core/context/gl-context.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.24 cepl/core/context/cepl-context.lisp

Dependency

core/context/types.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.25 cepl/core/context/surface.lisp

Dependency

core/context/cepl-context.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.26 cepl/core/context/delayed-resource-init.lisp

Dependency

core/context/surface.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

3.1.27 cepl/core/context/version.lisp

Dependency

core/context/delayed-resource-init.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

split-float-version (function).

Internals

get-best-glsl-version (function).


3.1.28 cepl/core/blending/blending.lisp

Dependency

core/context/version.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.29 cepl/core/stencil/stencil.lisp

Dependency

core/blending/blending.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.30 cepl/core/stencil/mask.lisp

Dependency

core/stencil/stencil.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.31 cepl/core/scissor/scissor.lisp

Dependency

core/stencil/mask.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.32 cepl/core/color/color.lisp

Dependency

core/scissor/scissor.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.33 cepl/core/pixel-store/pixel-store.lisp

Dependency

core/color/color.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.34 cepl/core/depth/depth.lisp

Dependency

core/pixel-store/pixel-store.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.35 cepl/core/face/face.lisp

Dependency

core/depth/depth.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.36 cepl/core/types/initalized-p.lisp

Dependency

core/face/face.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.37 cepl/core/internals.lisp

Dependency

core/types/initalized-p.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.38 cepl/core/types/types.lisp

Dependency

core/internals.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.39 cepl/core/errors.lisp

Dependency

core/types/types.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.40 cepl/core/viewports/viewport.lisp

Dependency

core/errors.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.41 cepl/core/types/image-format.lisp

Dependency

core/viewports/viewport.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.42 cepl/core/types/pixel-format.lisp

Dependency

core/types/image-format.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.44 cepl/core/types/cffi-helpers.lisp

Dependency

core/types/cffi-extra-primitive-types.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.45 cepl/core/c-arrays/def.lisp

Dependency

core/types/cffi-helpers.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.46 cepl/core/c-arrays/aref-c.lisp

Dependency

core/c-arrays/def.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.47 cepl/core/c-arrays/populate.lisp

Dependency

core/c-arrays/aref-c.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

copy-lisp-data-to-c-array (function).

Internals

3.1.48 cepl/core/c-arrays/make.lisp

Dependency

core/c-arrays/populate.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.49 cepl/core/c-arrays/map.lisp

Dependency

core/c-arrays/make.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.50 cepl/core/c-arrays/rest.lisp

Dependency

core/c-arrays/map.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.51 cepl/core/types/layout.lisp

Dependency

core/c-arrays/rest.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.52 cepl/core/types/structs.lisp

Dependency

core/types/layout.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.53 cepl/core/gpu-buffers/gpu-buffers.lisp

Dependency

core/types/structs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.54 cepl/core/gpu-arrays/buffer-backed.lisp

Dependency

core/gpu-buffers/gpu-buffers.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.55 cepl/core/vaos/vaos.lisp

Dependency

core/gpu-arrays/buffer-backed.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.56 cepl/core/streams/buffer-streams.lisp

Dependency

core/vaos/vaos.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.57 cepl/core/transform-feedback/transform-feedback.lisp

Dependency

core/streams/buffer-streams.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.58 cepl/core/pipelines/compile-context.lisp

Dependency

core/transform-feedback/transform-feedback.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.59 cepl/core/pipelines/generics.lisp

Dependency

core/pipelines/compile-context.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

delete-gpu-function (generic function).

Internals

3.1.60 cepl/core/pipelines/uniforms.lisp

Dependency

core/pipelines/generics.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

3.1.61 cepl/core/pipelines/gpu-macros.lisp

Dependency

core/pipelines/uniforms.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.62 cepl/core/pipelines/gpu-pipeline-base.lisp

Dependency

core/pipelines/gpu-macros.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.63 cepl/core/pipelines/pipeline-validation.lisp

Dependency

core/pipelines/gpu-pipeline-base.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

3.1.64 cepl/core/pipelines/funcall-g.lisp

Dependency

core/pipelines/pipeline-validation.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

funcall-g (function).

Internals

3.1.65 cepl/core/pipelines/gpu-functions.lisp

Dependency

core/pipelines/funcall-g.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.66 cepl/core/pipelines/glsl-stages.lisp

Dependency

core/pipelines/gpu-functions.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

def-glsl-stage (macro).

Internals

3.1.67 cepl/core/pipelines/mapg-context.lisp

Dependency

core/pipelines/glsl-stages.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

3.1.68 cepl/core/pipelines/uniform-assigners-generation.lisp

Dependency

core/pipelines/mapg-context.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

3.1.69 cepl/core/pipelines/programs.lisp

Dependency

core/pipelines/uniform-assigners-generation.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

3.1.70 cepl/core/pipelines/multi-draw.lisp

Dependency

core/pipelines/programs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.71 cepl/core/pipelines/defpipeline.lisp

Dependency

core/pipelines/multi-draw.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.72 cepl/core/pipelines/gpu-lambda.lisp

Dependency

core/pipelines/defpipeline.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.73 cepl/core/pipelines/bake.lisp

Dependency

core/pipelines/gpu-lambda.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

bake-uniforms (function).

Internals

bake-and-g-> (function).


3.1.74 cepl/core/textures/def.lisp

Dependency

core/pipelines/bake.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.75 cepl/core/samplers/samplers.lisp

Dependency

core/textures/def.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.76 cepl/core/textures/textures.lisp

Dependency

core/samplers/samplers.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.77 cepl/core/textures/texture-samplers.lisp

Dependency

core/textures/textures.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

3.1.78 cepl/core/render-buffers/render-buffer.lisp

Dependency

core/textures/texture-samplers.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.79 cepl/core/samplers/context.lisp

Dependency

core/render-buffers/render-buffer.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

3.1.80 cepl/core/pipelines/map-g.lisp

Dependency

core/samplers/context.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

map-g-into* (macro).


3.1.81 cepl/core/pipelines/quad-stages.lisp

Dependency

core/pipelines/map-g.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

3.1.82 cepl/core/gpu-arrays/texture-backed.lisp

Dependency

core/pipelines/quad-stages.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.83 cepl/core/gpu-arrays/with-and-push.lisp

Dependency

core/gpu-arrays/texture-backed.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.84 cepl/core/fbos/fbo.lisp

Dependency

core/gpu-arrays/with-and-push.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.85 cepl/core/ubos/ubo.lisp

Dependency

core/fbos/fbo.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.86 cepl/core/ssbos/ssbos.lisp

Dependency

core/ubos/ubo.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.87 cepl/core/sync/sync.lisp

Dependency

core/ssbos/ssbos.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

cepl-client-wait-sync (function).


3.1.88 cepl/core/queries/query.lisp

Dependency

core/sync/sync.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.89 cepl/core/compute/compute.lisp

Dependency

core/queries/query.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.90 cepl/core/types/predefined/gpu-structs.lisp

Dependency

core/compute/compute.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface
Internals

3.1.91 cepl/core/context/make.lisp

Dependency

core/types/predefined/gpu-structs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Internals

set-context-defaults (function).


3.1.92 cepl/core/context/known-state-blocks.lisp

Dependency

core/context/make.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

with-context-state-restored (macro).

Internals

3.1.93 cepl/core/repl.lisp

Dependency

core/context/known-state-blocks.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Public Interface

3.1.94 cepl/docs/api/package.lisp

Dependency

core/repl.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).

Packages

cepl.docs.


3.1.95 cepl/core/types/docs-image-formats.lisp

Dependency

docs/api/package.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.96 cepl/core/types/docs-pixel-formats.lisp

Dependency

core/types/docs-image-formats.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.97 cepl/core/types/predefined/docs.lisp

Dependency

core/types/docs-pixel-formats.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.98 cepl/core/types/docs.lisp

Dependency

core/types/predefined/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.99 cepl/core/measurements/docs.lisp

Dependency

core/types/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.100 cepl/core/memory/docs.lisp

Dependency

core/measurements/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.101 cepl/core/c-arrays/docs.lisp

Dependency

core/memory/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.102 cepl/core/gpu-buffers/docs.lisp

Dependency

core/c-arrays/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.103 cepl/core/gpu-arrays/docs.lisp

Dependency

core/gpu-buffers/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.104 cepl/core/streams/docs.lisp

Dependency

core/gpu-arrays/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.105 cepl/core/viewports/docs.lisp

Dependency

core/streams/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.106 cepl/core/textures/docs.lisp

Dependency

core/viewports/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.107 cepl/core/samplers/docs.lisp

Dependency

core/textures/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.108 cepl/core/fbos/docs.lisp

Dependency

core/samplers/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.109 cepl/core/blending/docs.lisp

Dependency

core/fbos/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.110 cepl/core/ubos/docs.lisp

Dependency

core/blending/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.111 cepl/core/ssbos/docs.lisp

Dependency

core/ubos/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.112 cepl/core/vaos/docs.lisp

Dependency

core/ssbos/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.113 cepl/core/pipelines/docs.lisp

Dependency

core/vaos/docs.lisp (file).

Source

cepl.asd.

Parent Component

cepl (system).


3.1.114 cepl.build/build/package.lisp

Source

cepl.build.asd.

Parent Component

cepl.build (system).

Packages

cepl.build.


3.1.115 cepl.build/build/build.lisp

Dependency

build/package.lisp (file).

Source

cepl.build.asd.

Parent Component

cepl.build (system).

Public Interface
Internals

*cepl-release-mode* (special variable).


3.1.116 cepl.build/defn/package.lisp

Dependency

build/build.lisp (file).

Source

cepl.build.asd.

Parent Component

cepl.build (system).

Packages

cepl.defn.


3.1.117 cepl.build/defn/defn.lisp

Dependency

defn/package.lisp (file).

Source

cepl.build.asd.

Parent Component

cepl.build (system).

Public Interface
Internals

4 Packages

Packages are listed by definition order.


4.2 cepl.pipelines

Source

package.lisp.

Use List
Used By List

cepl.

Public Interface
Internals

4.3 cepl.ssbos

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.4 cepl.vaos

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.6 cepl.gpu-buffers

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.7 cepl.docs

Source

docs/api/package.lisp.

Use List
  • cepl.
  • common-lisp.

4.8 cepl.fbos

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.9 cepl.gpu-arrays.buffer-backed

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.10 cepl.measurements

Source

package.lisp.

Use List
Used By List
Public Interface

4.11 cepl.blending

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.12 cepl.documentation-functions

Source

package.lisp.

Use List
Used By List
Public Interface

4.13 cepl.scissor

Source

package.lisp.

Use List
Used By List

cepl.

Public Interface
Internals

4.14 cepl.stencil

Source

package.lisp.

Use List
Used By List

cepl.

Public Interface
Internals

4.15 cepl.samplers

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.16 cepl.types.foreign

Source

package.lisp.

Use List
Public Interface

4.18 cepl.types.predefined

Source

package.lisp.

Use List
Used By List

cepl.

Public Interface
Internals

4.19 cepl.queries

Source

package.lisp.

Use List
Used By List

cepl.

Public Interface
Internals

4.20 cepl.ubos

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.21 cepl.viewports

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.22 cepl.hidden

Source

package.lisp.

Use List

common-lisp.

Internals

4.23 defxstar-hidden

Source

core/utils.lisp.

Use List

common-lisp.

Internals

4.24 cepl.render-buffers

Source

package.lisp.

Use List
Used By List

cepl.

Public Interface
Internals

4.25 cepl.compute

Source

package.lisp.

Use List
Used By List

cepl.

Public Interface

4.26 cepl.context

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.27 cepl.textures

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.28 cepl.defn

Source

defn/package.lisp.

Use List
  • alexandria.
  • common-lisp.
Used By List
Public Interface
Internals

4.29 cepl.host

Source

package.lisp.

Use List
Public Interface
Internals

4.31 cepl.gpu-arrays.texture-backed

Source

package.lisp.

Use List
Used By List
Public Interface

4.32 cepl.memory

Source

package.lisp.

Use List
Used By List
Public Interface

4.33 cepl.lifecycle

Source

package.lisp.

Use List
Used By List

cepl.

Public Interface
Internals

4.34 cepl.transform-feedback

Source

package.lisp.

Use List
Used By List

cepl.

Public Interface
Internals

4.35 cepl.streams

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.36 %cepl.types

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.37 cepl.pixel-formats

Source

package.lisp.

Use List
Used By List
Internals

4.38 cepl-utils

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.39 cepl.errors

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.40 cepl.types

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.41 cepl.c-arrays

Source

package.lisp.

Use List
Used By List
Public Interface
Internals

4.42 cepl.image-formats

Source

package.lisp.

Use List
Used By List
Public Interface

4.43 cepl.sync

Source

package.lisp.

Use List
Used By List

cepl.

Public Interface
Internals

cepl-client-wait-sync (function).


5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Constants

Constant: +discard-attachment+
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Constant: +gl-id-bit-size+
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Constant: +max-context-count+
Package

cepl.context.

Source

core/context/types.lisp.

Constant: +null-gl-id+
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Constant: +unknown-gl-id+
Package

%cepl.types.

Source

core/types/cepl-types.lisp.


5.1.2 Special variables

Special Variable: *bptc-compressed-formats*

A list of all of OpenGL’s bptc compressed formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *color-renderable-formats*

A list of all of OpenGL’s color renderable formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *depth-formats*

A list of all of OpenGL’s depth formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *depth-stencil-formats*

A list of all of OpenGL’s depth stencil formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *extra-primitive-types*
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Special Variable: *floating-point-formats*

A list of all of OpenGL’s floating point formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *image-formats*

A list of all of OpenGL’s image formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *immutable-available*

After CEPL has been initialized this variable will hold t if immutable ‘texture‘ storage is available and nil if not.

Immutable texture storage does not mean that the texture’s ‘gpu-array‘ data is immutable. It means that the underlying format of the texture data cannot be changed. It is rare that you would want mutable storage and when you do, it is very hard to not create ’incomplete-textures’. https://www.opengl.org/wiki/Immutable_Storage_Texture#Texture_completeness

CEPL tries to make only complete textures so this is not a concern. If you do need this level of control, please raise a github issue as I would love to understand your usecase.

Package

cepl.textures.

Source

core/textures/textures.lisp.

Special Variable: *red/green-compressed-formats*

A list of all of OpenGL’s red/green compressed formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *regular-color-formats*

A list of all of OpenGL’s regular color formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *s3tc/dxt-compessed-formats*

A list of all of OpenGL’s s3tc/dxt compessed formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *signed-integral-formats*

A list of all of OpenGL’s signed integral formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *signed-normalized-integer-formats*

A list of all of OpenGL’s signed normalized integer formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *special-color-formats*

A list of all of OpenGL’s special color formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *srgb-color-formats*

A list of all of OpenGL’s srgb color formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *stencil-formats*

A list of all of OpenGL’s stencil formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *unsigned-integral-formats*

A list of all of OpenGL’s unsigned integral formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *unsigned-normalized-integer-formats*

A list of all of OpenGL’s unsigned normalized integer formats

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: *valid-image-formats-for-buffer-backed-texture*

A list of all of OpenGL’s valid image formats for buffer backed texture

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Special Variable: +null-buffer-backed-gpu-array+
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Special Variable: +null-fbo+
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Special Variable: +null-gpu-buffer+
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Special Variable: +null-texture+
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Special Variable: +null-texture-backed-gpu-array+
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Special Variable: +null-vao+
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.


5.1.3 Macros

Macro: assert-lambda-list (lambda-list expression datum &rest arguments)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: assoc-bind (lambda-list alist &body body)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: case= (form &body cases)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: dbind (lambda-list expressions &body body)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: def-glsl-stage (name args body-form outputs)

def-glsl-stage is useful when you wish to define a CEPL pipeline stage in glsl rather than lisp. This is especially useful if you want to use some pre-exisiting glsl without rewriting it to lisp.

It is used like this:

(def-glsl-stage frag-glsl (("color_in" :vec4) &context :330 :fragment) "void main() {
color_out = color_in;
}"
(("color_out" :vec4)))

It differs from a regular ‘defun-g‘ definition in a few ways.

- argument names are specified using strings.

- &context is mandatory. You must specify what shader stage this can be used for and also what version/s this stage requires

- You are defining the entire stage, not just a function body. This means you can define local shader functions etc

- You have to specify the outputs in lisp as well as the inputs. This allows CEPL to compose this stage in pipelines with regular CEPL gpu functions.

CEPL will write all the in, out and uniform definitions for your shader so do not specify those yourself.

This stage fully supports livecoding, so feel free to change and recomplile the text in the stage at runtime.

Package

cepl.pipelines.

Source

core/pipelines/glsl-stages.lisp.

Macro: defcondition (name (&key condition-type prefix print-circle print-escape print-length print-level print-lines print-right-margin) (&rest args) error-string &body body)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: deferror (name (&key error-type prefix print-circle print-escape print-length print-level print-lines print-right-margin) (&rest args) error-string &body body)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: define-compiler-macro-g (name lambda-list &body body)

This lets you define a compiler-macro that only works with gpu-functions.

The &context lambda list keyword allows you to restrict this macro to only be valid in gpu functions with compatible contexts.

&whole and &environment are not supported.

Package

cepl.pipelines.

Source

core/pipelines/gpu-macros.lisp.

Macro: define-const (name val &key type)

Differs from alexandrias define-context in that it wont eval the val form at all if the var is already bound. This was we are always eq.

Package

cepl-utils.

Source

core/utils.lisp.

Macro: define-defn-declaration (name args &body body)
Package

cepl.defn.

Source

defn/defn.lisp.

Macro: defmacro-g (name lambda-list &body body)

This lets you a define a macro that only works in gpu code.

The &context lambda list keyword allows you to restrict this macro to only be valid in gpu functions with compatible contexts.

&whole and &environment are not supported.

Package

cepl.pipelines.

Source

core/pipelines/gpu-macros.lisp.

Macro: defmethod+ (name &rest args)
Package

cepl.defn.

Source

defn/defn.lisp.

Macro: defn (name typed-args result-types &body body)

Define a typed function

Package

cepl.defn.

Source

defn/defn.lisp.

Macro: defn-inline (name typed-args result-types &body body)

Define a typed function and request that it be inlined

Package

cepl.defn.

Source

defn/defn.lisp.

Macro: defpipeline-g (name context &body gpipe-args)

‘defpipeline-g‘ is how we define named rendering pipelines in CEPL.

Rendering pipelines are constructed by composing gpu-functions.

Rendering in OpenGL is descibed as a pipeline where a ‘buffer-stream‘ of data usually describing geometry) is mapped over whilst a number of uniforms are available as input and the outputs are written into an ‘FBO‘.

There are many stages to the pipeline and a full explanation of the GPU pipeline is beyond the scope of this docstring. However it surfices to say that only
5 stages are fully programmable (and a few more customizable).

defpipeline-g lets you specify the code (shaders) to run the programmable
parts (stages) of the pipeline.

The available stages kinds are:

- :vertex
- :tessellation-control
- :tessellation-evaluation
- :geometry
- :fragment
- :compute

To define code that runs on the gpu in CEPL we use gpu functions (gfuncs). Which are defined with ‘defun-g‘.

Here is an example pipeline:

(defun-g vert ((position :vec4) &uniform (i :float))
(values position (sin i) (cos i)))

(defun-g frag ((s :float) (c :float))
(v! s c 0.4 1.0))

(defpipeline-g prog-1 ()
(vert :vec4)
(frag :float :float))

Here we define a pipeline #’prog-1 which uses the gfunc vert as its vertex shader and used the gfunc frag as the fragment shader.

It is also possible to specify the name of the stages

(defpipeline-g prog-1 ()
:vertex (vert :vec4)
:fragment (frag :float :float))

But this is not neccesary unless you need to distinguish between tessellation
or geometry stages.

**– Compile Context –**

The second argument to defpipeline-g is the a list of additional information that is confusingly called the ’pipeline’s compile-context’.

Valid things that can be in this list are:

*A primitive type:*

This specifies what primitives can be passed into this pipeline.
By default all pipelines expect triangles. When you map a buffer-stream over a pipeline the primitive kind of the stream must match the pipeline.

The valid values are:

:dynamic
:points
:lines :line-loop :line-strip
:lines-adjacency :line-strip-adjacency
:triangles :triangle-fan :triangle-strip
:triangles-adjacency :triangle-strip-adjacency
(:patch <patch-size>)

:dynamic is special, it means that the pipeline will take the primitive kind from the buffer-stream being mapped over. This won’t work for with pipelines with geometry or tessellation stages, but it otherwise quite useful.

*A version restriction:*

This tells CEPL to compile the stage for a specific
version of GLSL. You usually do not want to use this as CEPL will compile for the version the user is using.

The value can be one of:

:140 :150 :330 :400 :410 :420 :430 :440 :450 :460

*The recompilation restriction*:

By adding the symbol ‘:static‘ to the list you tell CEPL that this pipeline
will not be recompiled again this session. This means CEPL will not automatically recompile it if one of the gpu-functions that make up it’s stages are recompiled.

It also allows CEPL to perform optimizations on the generated code that it couldnt usually due to expecting signature/type changes.

For a dryer version of the above please see the documentation for ‘compile-context‘.

**– Stage Names –**

Notice that we have to specify the typed signature of the stage. This is because CEPL allows you to ’overload’ gpu functions. The signature for the a gpu-function is a list which starts with the function name and whose other elements are the types of the non-uniforms arguments. As an example we can see above that the signature for vert is (vert :vec4), not (vert :vec4 :float).

**– Passing values from Stage to Stage –**

The return values of the gpu functions that are used as stages are passed as the input arguments of the next. The exception to this rule is that the first return value from the vertex stage is taken and used by GL, so only the subsequent values are passed along.

We can see this in the example above: #’vert returns 3 values but #’frag only receives 2.

The values from the fragment stage are writen into the current FBO. This may be the default FBO, in which case you will likely see the result on the screen, or it may be a FBO of your own.

By default GL only writed the fragment return value to the FBO. For handling multiple return values please see the docstring for ‘with-fbo-bound‘.

**– Using our pipelines –**

To call a pipeline we use the ‘map-g‘ macro (or one of its siblings ‘map-g-into‘/‘map-g-into*‘). The doc-strings for those macros go into more details but the basics are that map-g maps a buffer-stream over our pipeline and the results of the pipeline are fed into the ’current’ fbo.

We pass our stream to map-g as the first argument after the pipeline, we then pass the uniforms in the same style as keyword arguments. For example let’s see our prog-1 pipeline again:

(defun-g vert ((position :vec4) &uniform (i :float))
(values position (sin i) (cos i)))

(defun-g frag ((s :float) (c :float))
(v! s c 0.4 1.0))

(defpipeline-g prog-1 ()
(vert :vec4)
(frag :float :float))

We can call this as follows:

(map-g #’prog-1 v4-stream :i game-time)

Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Macro: defstruct-g (name-and-options &body slot-descriptions)

‘defstruct-g‘ defines a struct that can be used both gpu-side (in gpu functions, ‘gpu-array‘s, ‘ubos‘, etc) and also cpu-side (in ‘c-array‘s, other gstructs, etc)

You create these using defstruct-g so lets look at an example right now:

(defstruct-g our-data
(position :vec3)
(val :int :accessor val))

This should seem familiar if you have used common lisp’s structs.

You provide a name (with options if you need them) and the definitions for the slots. The format for a slot is:

(slot-name slot-type)

-or-

(slot-name slot-type :accessor accessor-name)

– make-* –

Once defined you would create the above struct as follows:

(defvar x (make-our-data :position (v! 1 2 3) :val 5))

This will return a fully populated struct in foreign memory. if values are not provided then the slots will be left uninitialized and the contents of the slot are unknown (and likely unsafe)
It is rather rare to make a one-off struct like this as it is much more common to use the type in a data-structure like a c-arrays or gpu-array.

– Accessors –

In the ’our-data’ example above, the slot named ’position’ doesnt have an accesor but the ’val’ slot does.

Both slots will get a lisp-struct-style accessor functions however because of the :accessor in val’s slot definition a generic function named by the symbol after :accessor will also be created.

For the example this means the functions #’our-data-position, #’our-data-val and the generic function #’val are available.

Whilst :accessor results in a generic function on the cpu side (with the associated overheads) on the gpu side the function to be used is resolved statically and so there is not performance cost.

– Options –

With the exception of :constructor the options for defstruct-g are rarely used but are documented here for the sake of completeness.

:constructor
Setting this to nil means that you will get *no* make- function
Setting this to any other symbol will name the constructor using that symbol The default will is that the constructor will be called make-<struct-name>

:readers
Setting this to nil means that you will get *no* functions to get the slots’ data

:writers
Setting this to nil means that you will get *no* setf functions to set the slots’ data

:accessors
Setting this to nil means that you will get *neither* of the above.

:pull-push
Setting this to nil means that you will get *no* ‘push-g‘ or ‘pull-g‘ methods defined for your type

:attribs
Setting this to nil means that defstruct-g will not be able to make buffer-streams from arrays of this type.

:populate
Setting this to nil means that you will not get a internal populate function for this type. <DEPRECATED>

Some of the above options are redundent in combination with others.
For example the ‘push-g‘ method uses #’populate behind the scenes so with populate disabled you can have ‘push-g‘ for this type.

CEPL currently does a poor job at communicating these conflicts to the user.

Package

cepl.types.

Source

core/types/structs.lisp.

Macro: defun+ (name args &body body)
Package

cepl.defn.

Source

defn/defn.lisp.

Macro: defun-g (name args &body body)

‘defun-g‘ let’s you define a function which will be run on the gpu.
Commonly refered to in CEPL as a ’gpu function’ or ’gfunc’

Gpu functions try to feel similar to regular CL functions however naturally
there are some differences.

The first and most obvious one is that gpu function should only be called
from other gpu functions and/or composed into a pipeline using ‘defpipeline-g‘.

Whilst it is actually possible to call on from a lisp function this is provided solely for making interactive development and debugging easier. Please see the ‘EXPERIMENTAL‘ section below for more info

When a gfunc is composed into a pipeline then that function takes on the role
of one of the ’shader stages’ of the pipeline. For a proper breakdown of pipelines see the docstring for defpipeline-g.

Let’s see a simple example of a gpu function we can then break down

;; {0} {3} {1} {2}
(defun-g example ((vert my-struct) &uniform (loop :float))
(values (v! (+ (my-struct-pos vert) ;; {4}
(v! (sin loop) (cos loop) 0))
1.0)
(my-struct-col vert)))

{0} So like the normal defun we specify a name first, and the arguments as a
list straight afterwards

{1} The &uniform lambda keyword says that arguments following it are ’uniform arguments’. A uniform is an argument which has the same value for the entire stage.
&optional and &key are not supported

{2} Here is our definition for the uniform value. If used in a pipeline as a vertex shader #’example will be called once for every value in the ‘buffer-stream‘ given. That means the ’vert’ argument will have a different value for each of the potentially millions of invocations in that ONE pipeline call, however ’loop’ will have the same value for the entire pipeline call.

{2 & 3} All arguments must have their types declared

{4} Here we see we are using CL’s values special form. CEPL fully supports multiple value return in your shaders. If our function #’example was called from another gpu-function then you can use multiple-value-bind to bind the returned values. If however our example function were used as a stage in a pipeline then the multiple returned values will be mapped to the multiple arguments of the next stage in the pipeline.

That’s the basics of gpu-functions. For more details on how they can be used
in pipelines please see the documentation for defpipeline-g.

*More Argument Kinds*

Along with ‘&uniform‘ there are also ‘&shared‘ & ‘&context‘.

‘&context‘ specifies restrictions on how & where the gpu-function can be used. You can specify what versions of GLSL this function is valid for, what primtive kind it operates on, what pipeline stage it can be used for, and how CEPL compiles the cpu side representation.

For more info please see the documentation on ‘compile-context‘

‘&shared‘ is only valid for gpu-functions which will be used as compute stages
It lets you specify variables whos data will be shared within the ’local group’ You can use any non opaque type for the shared variable.

*EXPRERIMENTAL*

CEPL has a highly experimental feature to allow you to call gpu-functions directly What it aims to allow you to do is to generate and run a pipeline which runs your function once with the given arguments on the GPU.

By doing this it gives you a way to try out your gpu-functions from the REPL without having to make a pipeline map-g over it whilst use ssbos or transform-feedback to capture the result.

Currently this only works with functions that would work within a vertex
shader (so things like gl-frag-pos will not work) however we want to expand on this in the future.

This is not intended to be used *anywhere* where performance matters, it was
made solely as a debugging/development aid. Every time it is run it must:

- generate a pipeline
- compile it
- map-g over it
- marshal the results back to lisp
- free the pipeline

This is *extremly* expensive, however as long as it takes less that 20ms or so
it is fast enough for use from the repl.

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Macro: defun-g-equiv (name args &body body)

Defun-g-equiv let’s you define a function which will be run on the gpu.
Commonly refered to in CEPL as a ’gpu function’ or ’gfunc’

The difference between defun-g-equiv & ‘defun-g‘ is that defun-g will create
a ’dummy’ lisp function so that ’jump to definition’ and signature hits work
in your editor, defun-g-equiv does not do this.

The advantage of defun-g-equiv is that you are then free define a lisp
equivalent of your gpu-function. This means you can use the same functions in
cpu or gpu code, which is very compelling.

*- the rest of the doc-string is the same as for defun-g -*

Gpu functions try to feel similar to regular CL functions however naturally
there are some differences.

The first and most obvious one is that whilst gpu function can be called
from other gpu functions, they cannot be called from lisp functions directly. They first must be composed into a pipeline using ‘defpipeline-g‘.

When a gfunc is composed into a pipeline then that function takes on the role of one of the ’shader stages’ of the pipeline. For a proper breakdown of pipelines see the docstring for defpipeline-g.

Let’s see a simple example of a gpu function we can then break down

;; {0} {3} {1} {2}
(defun-g-equiv example ((vert my-struct) &uniform (loop :float))
(values (v! (+ (my-struct-pos vert) ;; {4}
(v! (sin loop) (cos loop) 0))
1.0)
(my-struct-col vert)))

{0} So like the normal defun we specify a name first, and the arguments as a
list straight afterwards

{1} The &uniform lambda keyword says that arguments following it are ’uniform arguments’. A uniform is an argument which has the same value for the entire stage.
&optional and &key are not supported

{2} Here is our definition for the uniform value. If used in a pipeline as a vertex shader #’example will be called once for every value in the ‘buffer-stream‘ given. That means the ’vert’ argument will have a different value for each of the potentially millions of invocations in that ONE pipeline call, however ’loop’ will have the same value for the entire pipeline call.

{2 & 3} All arguments must have their types declared

{4} Here we see we are using CL’s values special form. CEPL fully supports multiple value return in your shaders. If our function #’example was called from another gpu-function then you can use multiple-value-bind to bind the returned values. If however our example function were used as a stage in a pipeline then the multiple returned values will be mapped to the multiple arguments of the next stage in the pipeline.

That’s the basics of gpu-functions. For more details on how they can be used
in pipelines please see the documentation for defpipeline-g.

*More Argument Kinds*

Along with ‘&uniform‘ there are also ‘&shared‘ & ‘&context‘.

‘&context‘ specifies restrictions on how & where the gpu-function can be used. You can specify what versions of GLSL this function is valid for, what primtive kind it operates on, what pipeline stage it can be used for, and how CEPL compiles the cpu side representation.

For more info please see the documentation on ‘compile-context‘

‘&shared‘ is only valid for gpu-functions which will be used as compute stages
It lets you specify variables whos data will be shared within the ’local group’ You can use any non opaque type for the shared variable.

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Macro: defwarning (name (&key warning-type prefix print-circle print-escape print-length print-level print-lines print-right-margin) (&rest args) warning-string &body body)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: ecase= (form &body cases)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: gpu-function (name)

This is CEPL’s equivalent of Common Lisp’s #’function function.

It returns the object that represents the gpu-function with the specified signature.

Currently there is no reason to use this function. It is only available for the sake of completeness and future features.

Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Macro: lambda-g (args &body body)

lambda-g let’s you define an anonymous function which can run on the gpu. Commonly refered to in CEPL as a ’gpu function’ or ’gfunc’

Gpu functions try to feel similar to regular CL functions however naturally
there are some differences.

The first and most obvious one is that whilst gpu function can be called
from other gpu functions, they cannot be called from lisp functions directly. They first must be composed into a pipeline using ‘defpipeline-g‘.

When a gfunc is composed into a pipeline then that function takes on the role
of one of the ’shader stages’ of the pipeline. For a proper breakdown of pipelines see the docstring for defpipeline-g.

Let’s see a simple example of a gpu function we can then break down

;; {0} {3} {1} {2}
(lambda-g ((vert my-struct) &uniform (loop :float))
(values (v! (+ (my-struct-pos vert) ;; {4}
(v! (sin loop) (cos loop) 0))
1.0)
(my-struct-col vert)))

{0} So like the normal lambda we specify the arguments (as a list) first

{1} The &uniform lambda keyword says that arguments following it are ’uniform arguments’. A uniform is an argument which has the same value for the entire stage.
&optional and &key are not supported

{2} Here is our definition for the uniform value. If used in a pipeline as a vertex shader #’example will be called once for every value in the ‘buffer-stream‘ given. That means the ’vert’ argument will have a different value for each of the potentially millions of invocations in that ONE pipeline call, however ’loop’ will have the same value for the entire pipeline call.

{2 & 3} All arguments must have their types declared

{4} Here we see we are using CL’s values special form. CEPL fully supports multiple value return in your shaders. If our function #’example was called from another gpu-function then you can use multiple-value-bind to bind the returned values. If however our example function were used as a stage in a pipeline then the multiple returned values will be mapped to the multiple arguments of the next stage in the pipeline.

That’s the basics of gpu-functions. For more details on how they can be used
in pipelines please see the documentation for defpipeline-g.

Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Macro: locally+ (name &body body)
Package

cepl.defn.

Source

defn/defn.lisp.

Macro: map-g (pipeline-func stream &rest uniforms)

The map-g macro maps a ‘buffer-stream‘ over our pipeline and the results of the
pipeline are fed into the ’current’ ‘fbo‘.

This is how we run our pipelines and thus is how we render in CEPL.

The arguments to map-g are going to depend on what gpu-functions were composed
in the pipeline you are calling. However the layout is always as follows.

- the pipeline function: The first argument is always the pipeline you wish to
map the data over.

- The stream: The next argument will be the buffer-stream which will be used as the
inputs to the vertex-shader of the pipeline. The type of the buffer-stream must
be mappable onto types of the non uniform args of the gpu-function being used
as the vertex-shader.

- Uniform args: Next you must provide the uniform arguments. These are passed in
the same fashion as regular &key arguments.

CEPL will then run the pipeline with the given args and the results will be fed
into the current FBO. If no FBO has been bound by the user then the current FBO
will be the default FBO which will most likely mean you are rendering into the
surface visable on your screen.

If an FBO has been bound then the value/s from the fragment shader will be
written into the attachments of the FBO. To control this please see the
doc-string for ‘with-fbo-bound‘. The default behaviour is that each of the
multiple returns values from the gpu-function used as the fragment shader will
be written into the respective attachments of the FBO (first value to first attachment, second value to second attachment, etc)

Package

cepl.pipelines.

Source

core/pipelines/map-g.lisp.

Macro: map-g-into (fbo pipeline-func stream &rest uniforms)

The ‘map-g-into‘ macro maps a ‘buffer-stream‘ over our pipeline and the results of the pipeline are fed into the supplied ‘fbo‘.

This is how we run our pipelines and thus is how we render in CEPL.

The arguments to map-g-into are going to depend on what gpu-functions were
composed in the pipeline you are calling. However the layout is always as
follows:

- target fbo: This is where the results of the pipeline will be written.

- the pipeline function: The first argument is always the pipeline you wish to
map the data over.

- The stream: The next argument will be the buffer-stream which will be used as the inputs to the vertex-shader of the pipeline. The type of the buffer-stream must
be mappable onto types of the non uniform args of the gpu-function being used
as the vertex-shader.

- Uniform args: Next you must provide the uniform arguments. These are passed in
the same fashion as regular &key arguments.

CEPL will then run the pipeline with the given args and the results will be fed
into the specified FBO. The value/s from the fragment shader will be
written into the attachments of the FBO. If you need to control this in the
fashion usualy provided by ‘with-fbo-bound‘ then please see the doc-string for ‘map-g-into*‘.

The default behaviour is that each of the multiple returns values from the
gpu-function used as the fragment shader will be written into the respective
attachments of the FBO (first value to first attachment, second value to
second attachment, etc)

Internally map-g-into wraps call to ‘map-g‘ in with-fbo-bound. The with-fbo-bound
has its default configuration which means that:

- the ‘viewport‘ being will be the dimensions of the ‘gpu-array‘ in the first fbo attachment - and blending is enabled

If you want to use map-g-into and have control over these options please use ‘map-g-into*‘

Package

cepl.pipelines.

Source

core/pipelines/map-g.lisp.

Macro: multi-map-g (pipeline-func draw-command-array stream &rest uniforms)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Macro: n-of* (form count)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: p-> (args &body stages)

(p-> (1 2 3) #’a #’b #’c #’d)
Calls first function with args provided and uses result as arguments for next function. Uses multiple-value-call so you can use (values) to specify complex lambda-args.

Package

cepl-utils.

Source

core/utils.lisp.

Macro: pipeline-g (context &body gpipe-args)

pipeline is how we define anonymous rendering pipelines in CEPL.

Rendering pipelines are constructed by composing gpu-functions.

Rendering in OpenGL is descibed as a pipeline where a ‘buffer-stream‘ of data usually describing geometry) is mapped over whilst a number of uniforms are available as input and the outputs are written into an ‘FBO‘.

There are many stages to the pipeline and a full explanation of the GPU pipeline is beyond the scope of this docstring. However it surfices to say that only 5 stages are fully programmable (and a few more customizable).

pipeline lets you specify the code (shaders) to run the programmable
parts (stages) of the pipeline.

The available stages kinds are:

- :vertex
- :tessellation-control
- :tessellation-evaluation
- :geometry
- :fragment
- :compute

To define code that runs on the gpu in CEPL we use gpu functions (gfuncs) Which are defined with ‘defun-g‘ or lambda-g.

Here is an example pipeline:

(defun-g vert ((position :vec4) &uniform (i :float))
(values position (sin i) (cos i)))

(defun-g frag ((s :float) (c :float))
(v! s c 0.4 1.0))

(defun make-lambda-pipeline ()
(pipeline ()
(vert :vec4)
(frag :float :float)))

Here we define a lambda pipeline which uses the gfunc vert as its vertex shader and used the gfunc frag as the fragment shader.

It is also possible to specify the name of the stages

(defun make-lambda-pipeline ()
(pipeline ()
:vertex (vert :vec4)
:fragment (frag :float :float)))

But this is not neccesary unless you need to distinguish between tessellation or geometry stages.

**– Context –**

The first argument to pipeline-g is the a list of additional information that is confusingly called the ’pipeline’s context’. We need to change this name.

Valid things that can be in this list are:

*A primitive type:*

This specifies what primitives can be passed into this pipeline.
By default all pipelines expect triangles. When you map a buffer-stream over a pipeline the primitive kind of the stream must match the pipeline.

The valid values are:

:dynamic
:points
:lines :line-loop :line-strip
:lines-adjacency :line-strip-adjacency
:triangles :triangle-fan :triangle-strip
:triangles-adjacency :triangle-strip-adjacency
(:patch <patch-size>)

:dynamic is special, it means that the pipeline will take the primitive kind from the buffer-stream being mapped over. This won’t work for with pipelines with geometry or tessellation stages, but it otherwise quite useful.

*A version restriction:*

This tells CEPL to compile the stage for a specific
version of GLSL. You usually do not want to use this as CEPL will compile for the version the user is using.

The value can be one of:

:140 :150 :330 :400 :410 :420 :430 :440 :450 :460

**– Stage Names –**

Notice that we have to specify the typed signature of the stage. This is because CEPL allows you to ’overload’ gpu functions. The signature for the a gpu-function is a list which starts with the function name and whose other elements are the types of the non-uniforms arguments. As an example we can see above that the signature for vert is (vert :vec4), not (vert :vec4 :float).

**– Passing values from Stage to Stage –**

The return values of the gpu functions that are used as stages are passed as the input arguments of the next. The exception to this rule is that the first return value from the vertex stage is taken and used by GL, so only the subsequent values are passed along.

We can see this in the example above: #’vert returns 3 values but #’frag only receives 2.

The values from the fragment stage are writen into the current FBO. This may be the default FBO, in which case you will likely see the result on the screen, or it may be a FBO of your own.

By default GL only writed the fragment return value to the FBO. For handling multiple return values please see the docstring for ‘with-fbo-bound‘.

**– Using our pipelines –**

To call a pipeline we use the map-g macro (or one of its siblings ‘map-g-into‘/‘map-g-into*‘). The doc-strings for those macros go into more details but the basics are that map-g maps a buffer-stream over our pipeline and the results of the pipeline are fed into the ’current’ fbo.

We pass our stream to map-g as the first argument after the pipeline, we then pass the uniforms in the same style as keyword arguments. For example let’s see our lambda pipeline example again:

(defun-g vert ((position :vec4) &uniform (i :float))
(values position (sin i) (cos i)))

(defun-g frag ((s :float) (c :float))
(v! s c 0.4 1.0))

(defun make-lambda-pipeline ()
(pipeline ()
(vert :vec4)
(frag :float :float)))

We can call this as follows:

(setf some-var (make-lambda-pipeline))

(map-g some-var v4-stream :i game-time)

Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Macro: profile-block (name &body body)
Package

cepl.build.

Source

build/build.lisp.

Macro: release-unwind-protect (protected &body cleanup)
Package

cepl.build.

Source

build/build.lisp.

Macro: vec-bind ((&rest vars) vec &body body)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: with-blending (blending-params &body body)

This macro will set the default blending parameters for the scope.

These values will be used unless overriden by blend settings in an ‘fbo‘.

CEPL ensures the blending settings are undone at the end of the scope.

Package

cepl.blending.

Source

core/blending/blending.lisp.

Macro: with-c-array-freed ((var-name c-array) &body body)

Binds the ‘c-array‘ to the variable named by the var-name argument. Frees the c-array at the end of the scope.

Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Macro: with-c-arrays-freed ((var-name c-arrays) &body body)

Binds a list of ‘c-array‘s to the variable named by the var-name argument. Frees all of the c-arrays at the end of the scope.

Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Macro: with-cepl-context ((&optional var-name cepl-context forgo-let) &body body)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Macro: with-context-state-restored ((&key program stencil vao fbos-bound depth-test-function depth-mask depth-range depth-clamp clear-color cull-face front-face viewport pack-alignment unpack-alignment color-mask-indices tex-unit-ids buffer-targets scissor-viewport-indices ubo-indices ssbo-indices) &body body)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Macro: with-fbo-bound ((fbo &key target with-viewport attachment-for-size with-blending draw-buffers) &body body)

This is one macro you use when you want to capture the output from a pipeline in an ‘FBO‘.

‘with-fbo-bound‘ will capture any rendering from any map-g calls inside it body.

Also look at the docs for ‘map-g-into‘ and ‘map-g-into*‘ for a full picture of your options

**– draw buffers –*
draw-buffers is an important argument, it allows you to direct the outputs from the fragment-shader of the pipeline into the fbo’s color ‘attachment‘s.
This means that your pipelines can write into multiple attachments (and thus multiple ‘texture‘s) at once.

To use it either pass in:

nil - Which means that the fbo is bound but no attachments will be draw into (rarely used)

t - Which means the all attachments will be available to be drawn into
this will happen in order, so the first output from the fragment shader will draw into the first attachment, the second output to the second attachment, etc

an array produced by calling ‘attachment-pattern‘ -
This option allows you to control which attachments are bound to
which outputs. For example in the following..

(defun foo (fbo)
(with-fbo-bound (fbo :draw-buffers (attachment-pattern 0 2)) ..
etc))

output 0 is bound to attachment 0 but output 1 is bound to
attachment 2.

To specify that an output is discarded use +discard-attachment+ in place of an color attachment number.

**– with-viewport –**

If with-viewport is t then with-fbo-bound adds a ‘with-fbo-viewport‘ that uses this fbo to this scope. This means that the ‘current-viewport‘ within this scope will be set to the equivalent of:

(make-viewport dimensions-of-fbo ’(0 0))

See the docstruct ‘with-fbo-viewport‘ for details on this behavior.

One last detail is that you may want to take the dimensions of the viewport from an attachment other than attachment-0. To do this use the ’attachment-for-size argument and give the index of the color-attachment to use.

**– with-blending –**

If with-blending is t then ‘with-fbo-bound‘ adds a ‘with-blending‘ that uses this fbo to this scope.
This means that the blending parameters from your fbo will be used while rendering. For the details and version specific behaviours check out
the docstring for cepl.blending:with-blending

**– target –**

For target the choices are :framebuffer, :read_framebuffer and :draw_framebuffer.

You normally dont need to worry about the target as the last two are only used when you need certain GL read and write operations to happen to different buffers. It remains for those who know they need this but otherwise you can
let CEPL handle it.

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Macro: with-fbo-viewport ((fbo &optional attachment-for-size) &body body)

This macro behaves similarly to with-viewport in that is sets the
current ‘viewport‘. However rather than passing in a viewport, one is created[0] based on the dimensions of the gpu-array bound as the specified attachment to the given fbo.

By default color-attachment0 will be used but you can provide your own attachment index using the :attachment argument.

It will remain as the ‘current-viewport‘ until the end of the scope.

[0] CEPL is free to reuse internal viewport objects where it makes sense instead of consing up a new viewport. This means that the viewport inside the scope may be eq to the viewport outside, but with different values in its slots for the duration of the body.

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Macro: with-gpu-array-as-c-array ((temp-name gpu-array &key access-type target) &body body)

This macro takes a ‘gpu-array‘ and asks OpenGL to temporarily ’map’ it to
a ‘c-array‘. Within the scope of the body you can run any of the ‘c-array‘ commands on it.

This macro is really helpful if you need to have random access to the data in the gpu-array.

A simple example would be if we wanted to set the 3rd element in a gpu array to 5.0 we could do the following:

(with-gpu-array-as-c-array (tmp-c-arr my-gpu-array)
(setf (aref-c tmp-c-arr 2) 5.0))

The reason we provide this and not a function like ‘aref-c‘ for gpu-arrays is that it would give the impression that this kind of operation is cheap, which it is not. There are cases where using with-gpu-array-as-c-array will perform better than ‘push-g‘ and there cases where the opposite is true.

Generally this will be to do with how much of the block of memory is being updated, but it is best to consult current graphics programming texts to find out the details.

The valid values for the :access argument are :read-only :write-only or :read-write.

Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Macro: with-gpu-array-as-pointer ((temp-name gpu-array &key access-type target) &body body)

This macro takes a ‘gpu-array‘ and asks OpenGL to temporarily ’map’ it to a pointer. Within the scope of the body you can run any cffi command on it.

This macro is really helpful if you need to have random access to the data in the gpu-array.

The valid values for the :access argument are :read-only :write-only or :read-write.

Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Macro: with-gpu-array-range-as-c-array ((temp-name gpu-array start-index length &key access-set) &body body)

This macro takes a ‘gpu-array‘ and asks OpenGL to temporarily ’map’ it a portion of it to a ‘c-array‘. Within the scope of the body you can run any of the ‘c-array‘ commands on it.

This macro is really helpful if you need to have random access to the data in the gpu-array.

A simple example would be if we wanted to set the 3rd element in a gpu array to 5.0 we could do the following:

(with-gpu-array-range-as-c-array (tmp-c-arr my-gpu-array 10 20)
(setf (aref-c tmp-c-arr 2) 5.0))

The reason we provide this and not a function like ‘aref-c‘ for gpu-arrays is that it would give the impression that this kind of operation is cheap, which it is not. There are cases where using with-gpu-array-as-c-array will perform better than ‘push-g‘ and there cases where the opposite is true.
Generally this will be to do with how much of the block of memory is being updated, but it is best to consult current graphics programming texts to find out the details.

The valid values for the :access argument are :read-only :write-only or :read-write.

Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Macro: with-gpu-array-range-as-pointer ((temp-name gpu-array start-index length &key access-set target) &body body)

This macro takes a ‘gpu-array‘ and asks OpenGL to temporarily ’map’ a portion ofit to a pointer. Within the scope of the body you can run any cffi command on it.

This macro is really helpful if you need to have random access to the data in the gpu-array.

The valid values for the :access argument are :read-only :write-only or :read-write.

Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Macro: with-gpu-query-bound ((query) &body body)
Package

cepl.queries.

Source

core/queries/query.lisp.

Macro: with-hash ((var-name key) hash-table &body body)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: with-hash* (var-key-pairs hash-table &body body)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: with-instances (count &body body)

The with-instances macro is used to enable instancing. You specify number number of instances with the count argument.

An example of its usage is as follows:

(with-instances 1000
(map-g #’draw-grass grass-data :tex *grass-texture*))

This behaves kind of like you had written the following..

(dotimes (x 1000)
(map-g #’draw-grass grass-data :tex *grass-texture*))

..except MUCH more efficiently as you did not have to submit 1000 draw calls.

Another difference is that, in the pipeline, the variable gl-instance-id will contain the index of which of the 1000 instances is currently being drawn.

Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Macro: with-outputs-to-attachments ((draw-buffers &key check) &body body)

This macro lets you rebind which pipeline output map to which of the color attachments in the current fbo.

To use it you must have already bound and fbo (see ‘with-fbo-bound‘), you then pass an attachment pattern (created using ‘attachment-pattern‘) as the primary argument.

For example:

(with-outputs-to-attachments ((attachment-pattern 2 0))
..
etc)

Here output 0 is bound to attachment 2 and output 1 is bound to attachment 0.

The :check keyword argument with ‘with-outputs-to-attachments‘ informs CEPL whether you want to check that the attachment pattern provided is valid for the currently bound fbo.

To specify that an output is discarded use +discard-attachment+ in place of an color attachment number.

Note: If you want to bind the fbo and immediately set these mappings then instead use the :gpu-buffers argument to ‘with-fbo-bound‘. For example the above mapping can be achieved with:

(with-fbo-bound (fbo :draw-buffers (attachment-pattern 2 0))
..
etc)

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Macro: with-setf (place value &body body)

Used like this: (with-setf (aref x 0) 10 blah
blah)

Package

cepl-utils.

Source

core/utils.lisp.

Macro: with-setf* (place-value-pairs &body body)

Used like this:
(with-setf* ((aref a 0) 10 (foo :plinge) :narf) (print "blarr"))

Package

cepl-utils.

Source

core/utils.lisp.

Macro: with-temp-sampler ((var tex) &body body)

This macro takes a ‘texture‘ and creates a temporary ‘sampler‘ that is valid within the scope.

As the sampler will be freed at the end of the scope, do not return it or assign it to any variable that outlasts the scope.

Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Macro: with-transform-feedback ((transform-feedback-stream) &body body)
Package

cepl.transform-feedback.

Source

core/transform-feedback/transform-feedback.lisp.

Macro: with-vao-bound (vao &body body)

Binds the ‘vao‘ to the gl context and guarentees it will be unbound after the body scope.

Usually you will not need to interact with the vao directly as you can simply use a ‘buffer-stream‘ and let ‘map-g‘ handle when it should be bound and unbound.

Package

cepl.vaos.

Source

core/vaos/vaos.lisp.

Macro: with-viewport (viewport &body body)

This macro sets the current ‘viewport‘ to the viewport given as the argument. It will remain as the ‘current-viewport‘ until the end of the scope.

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.


5.1.4 Compiler macros

Compiler Macro: aref-c (c-array &rest subscripts)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Compiler Macro: (setf aref-c) (c-array &rest subscripts)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Compiler Macro: assocr (item alist &key key test test-not)
Package

cepl-utils.

Source

core/utils.lisp.

Compiler Macro: cepl-context ()
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Compiler Macro: clear (&optional target)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Compiler Macro: clear-attachments (&rest attachments)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Compiler Macro: clear-fbo (fbo &rest attachments)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Compiler Macro: color-attachments (&rest vals)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Compiler Macro: color-mask (index &optional cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Compiler Macro: (setf color-mask) (index &optional cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Compiler Macro: color-masks (&optional cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Compiler Macro: (setf color-masks) (&optional cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Compiler Macro: cull-face (&optional cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Compiler Macro: (setf cull-face) (&optional cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Compiler Macro: current-stencil-params (face &optional cepl-context)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Compiler Macro: (setf current-stencil-params) (face &optional cepl-context)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Compiler Macro: depth-clamp (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Compiler Macro: (setf depth-clamp) (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Compiler Macro: depth-mask (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Compiler Macro: (setf depth-mask) (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Compiler Macro: depth-range-vec2 (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Compiler Macro: (setf depth-range-vec2) (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Compiler Macro: depth-test-function (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Compiler Macro: (setf depth-test-function) (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Compiler Macro: ensure-vec-index (vec index null-element &optional element-type)
Package

cepl-utils.

Source

core/utils.lisp.

Compiler Macro: front-face (&optional cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Compiler Macro: (setf front-face) (&optional cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Compiler Macro: gpu-buffer-bound (ctx target)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Compiler Macro: (setf gpu-buffer-bound) (ctx target)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Compiler Macro: pack-alignment (&optional cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Compiler Macro: (setf pack-alignment) (&optional force cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Compiler Macro: per-attachment-blending-available-p (&optional cepl-context)
Package

cepl.fbos.

Source

core/blending/blending.lisp.

Compiler Macro: ptr-index (c-array &optional x y z w)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Compiler Macro: scissor-viewport (&optional index cepl-context)
Package

cepl.scissor.

Source

core/scissor/scissor.lisp.

Compiler Macro: (setf scissor-viewport) (&optional index cepl-context)
Package

cepl.scissor.

Source

core/scissor/scissor.lisp.

Compiler Macro: stencil-mask (face &optional cepl-context)
Package

%cepl.types.

Source

core/stencil/mask.lisp.

Compiler Macro: (setf stencil-mask) (face &optional cepl-context)
Package

%cepl.types.

Source

core/stencil/mask.lisp.

Compiler Macro: unpack-alignment (&optional cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Compiler Macro: (setf unpack-alignment) (&optional force cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.


5.1.5 Ordinary functions

Function: %%make-buffer-texture (&key id cache-id base-dimensions type image-format mipmap-levels layer-count cubes-p allocated-p mutable-p samples fixed-sample-locations-p last-sampler-id backing-array owns-array)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %%make-fbo (&key id empty-params color-arrays-fill-pointer color-arrays depth-array stencil-array draw-buffer-map clear-mask is-default attachment-count blending-params)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %%make-texture (&key id cache-id base-dimensions type image-format mipmap-levels layer-count cubes-p allocated-p mutable-p samples fixed-sample-locations-p last-sampler-id)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: %empty-fbo-params-dimensions (instance)
Writer: (setf %empty-fbo-params-dimensions) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

dimensions.

Reader: %empty-fbo-params-fbo (instance)
Writer: (setf %empty-fbo-params-fbo) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

fbo.

Reader: %empty-fbo-params-fixed-sample-locations-p (instance)
Writer: (setf %empty-fbo-params-fixed-sample-locations-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

fixed-sample-locations-p.

Reader: %empty-fbo-params-layer-count (instance)
Writer: (setf %empty-fbo-params-layer-count) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

layer-count.

Reader: %empty-fbo-params-samples (instance)
Writer: (setf %empty-fbo-params-samples) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

samples.

Reader: %empty-fbo-params-viewport (instance)
Writer: (setf %empty-fbo-params-viewport) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

viewport.

Reader: %fbo-attachment-count (instance)
Writer: (setf %fbo-attachment-count) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

attachment-count.

Reader: %fbo-blending-params (instance)
Writer: (setf %fbo-blending-params) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

blending-params.

Reader: %fbo-clear-mask (instance)
Writer: (setf %fbo-clear-mask) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

clear-mask.

Reader: %fbo-color-arrays (instance)
Writer: (setf %fbo-color-arrays) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

color-arrays.

Reader: %fbo-color-arrays-fill-pointer (instance)
Writer: (setf %fbo-color-arrays-fill-pointer) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

color-arrays-fill-pointer.

Reader: %fbo-depth-array (instance)
Writer: (setf %fbo-depth-array) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

depth-array.

Reader: %fbo-draw-buffer-map (instance)
Writer: (setf %fbo-draw-buffer-map) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

draw-buffer-map.

Reader: %fbo-empty-params (instance)
Writer: (setf %fbo-empty-params) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

empty-params.

Reader: %fbo-id (instance)
Writer: (setf %fbo-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Reader: %fbo-is-default (instance)
Writer: (setf %fbo-is-default) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

is-default.

Reader: %fbo-stencil-array (instance)
Writer: (setf %fbo-stencil-array) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

stencil-array.

Reader: %gpu-fence-obj (instance)
Writer: (setf %gpu-fence-obj) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

obj.

Function: %make-c-array (&key pointer dimensions total-size byte-size element-type sizes row-alignment struct-element-typep element-pixel-format element-from-foreign element-to-foreign free)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-gpu-array (&key dimensions)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-gpu-array-bb (&key dimensions buffer access-style element-type byte-size element-byte-size offset-in-bytes-into-buffer element-pixel-format row-alignment)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-gpu-array-t (&key dimensions texture texture-type level-num layer-num face-num image-format)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-gpu-buffer (&key id cache-id arrays)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-gpu-fence (obj)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-render-buffer (&key id image-format resolution multisample-p)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-sampler (&key context-id id-box type texture lod-bias min-lod max-lod border-color expects-mipmap minify-filter magnify-filter wrap expects-depth compare anisotropy)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-ssbo (&key id data index owns-gpu-array)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-stencil-params (&key test value mask on-stencil-test-fail on-stencil-pass-depth-test-fail on-stencil-pass-depth-test-pass)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-tfs (&key arrays pending-arrays bound current-prog-id)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-ubo (&key id data index owns-gpu-array)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-viewport (&key resolution-x resolution-y origin-x origin-y)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: %render-buffer-id (instance)
Writer: (setf %render-buffer-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Reader: %render-buffer-image-format (instance)
Writer: (setf %render-buffer-image-format) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

image-format.

Reader: %render-buffer-multisample-p (instance)
Writer: (setf %render-buffer-multisample-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

multisample-p.

Reader: %render-buffer-resolution (instance)
Writer: (setf %render-buffer-resolution) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

resolution.

Reader: %sampler-anisotropy (instance)
Writer: (setf %sampler-anisotropy) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

anisotropy.

Reader: %sampler-border-color (instance)
Writer: (setf %sampler-border-color) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

border-color.

Reader: %sampler-compare (instance)
Writer: (setf %sampler-compare) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

compare.

Reader: %sampler-expects-depth (instance)
Writer: (setf %sampler-expects-depth) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

expects-depth.

Reader: %sampler-expects-mipmap (instance)
Writer: (setf %sampler-expects-mipmap) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

expects-mipmap.

Function: %sampler-id (sampler)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf %sampler-id) (sampler)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: %sampler-id-box (instance)
Writer: (setf %sampler-id-box) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id-box.

Reader: %sampler-lod-bias (instance)
Writer: (setf %sampler-lod-bias) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

lod-bias.

Reader: %sampler-magnify-filter (instance)
Writer: (setf %sampler-magnify-filter) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

magnify-filter.

Reader: %sampler-max-lod (instance)
Writer: (setf %sampler-max-lod) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

max-lod.

Reader: %sampler-min-lod (instance)
Writer: (setf %sampler-min-lod) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

min-lod.

Reader: %sampler-minify-filter (instance)
Writer: (setf %sampler-minify-filter) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

minify-filter.

Reader: %sampler-texture (instance)
Writer: (setf %sampler-texture) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

texture.

Reader: %sampler-type (instance)
Writer: (setf %sampler-type) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

type.

Reader: %sampler-wrap (instance)
Writer: (setf %sampler-wrap) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

wrap.

Reader: %stencil-params-mask (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

mask.

Reader: %stencil-params-on-stencil-pass-depth-test-fail (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

on-stencil-pass-depth-test-fail.

Reader: %stencil-params-on-stencil-pass-depth-test-pass (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

on-stencil-pass-depth-test-pass.

Reader: %stencil-params-on-stencil-test-fail (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

on-stencil-test-fail.

Reader: %stencil-params-test (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

test.

Reader: %stencil-params-value (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

value.

Reader: %tfs-arrays (instance)
Writer: (setf %tfs-arrays) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

arrays.

Reader: %tfs-bound (instance)
Writer: (setf %tfs-bound) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

bound.

Reader: %tfs-current-prog-id (instance)
Writer: (setf %tfs-current-prog-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

current-prog-id.

Reader: %tfs-pending-arrays (instance)
Writer: (setf %tfs-pending-arrays) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

pending-arrays.

Reader: %viewport-origin-x (instance)
Writer: (setf %viewport-origin-x) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

origin-x.

Reader: %viewport-origin-y (instance)
Writer: (setf %viewport-origin-y) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

origin-y.

Reader: %viewport-resolution-x (instance)
Writer: (setf %viewport-resolution-x) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

resolution-x.

Reader: %viewport-resolution-y (instance)
Writer: (setf %viewport-resolution-y) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

resolution-y.

Function: 1d-p (object)
Package

cepl.internals.

Source

core/internals.lisp.

Function: across-c-ptr (function c-array)

This function takes two arguments:

- A function that takes a pointer and a (unsigned-byte 32)
- A ‘c-array‘

‘across-c-ptr‘ will then call the given function once for every element in the c-array passing in the pointer to an element of the array and the index to that element.

Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: active-texture-num (num)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: add-surface (context &key title width height fullscreen resizable no-frame hidden make-current)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: adjust-gpu-array (buffer-backed-gpu-array new-dimensions &key initial-contents access-style row-alignment)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: always (incoming-val stored-val)

Always passes

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.

Function: anisotropy (sampler)

The GL spec says the following

> Anisotropic filtering is an advanced filtering technique that takes
> multiple samples, blending the results together. Exactly how this is
> done is implementation-dependent, but control over the feature is
> specific: the user provides a maximum number of samples that can be
> taken of the texture during any one texture fetch. Note that this is
> the ’maximum’ number of samples; a particular texture fetch may take
> fewer samples. Hardware generally attempts to determine the best
> number of samples to take, clamped to the user-provided maximum.

This function lets you get and set the anisotropic filtering value on the sampler.

A value of 1f0 means no anisotropic filtering and any value higher than 1f0 counts as a use of anisotropic filtering.

The anisotropic filtering setting can also be set during creation of a sampler you can use the ‘:anisotropy‘ keyword argument to the ‘sample‘ function. The default value is 1f0.

Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: (setf anisotropy) (sampler)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: arange (x &optional y z u v)
Package

cepl-utils.

Source

core/utils.lisp.

Function: arangei (x &optional y z u v)
Package

cepl-utils.

Source

core/utils.lisp.

Function: aref-c (c-array &rest subscripts)

Accesses the ‘c-array‘ element specified by the subscripts

Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: (setf aref-c) (c-array &rest subscripts)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: aref-c* (c-array subscripts)

Accesses the ‘c-array‘ element specified by the subscripts.

The difference between this and ‘aref-c‘ is that this this function takes the subscripts as a list.

Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: (setf aref-c*) (c-array subscripts)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: arrays-indirect-command-base-instance (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf arrays-indirect-command-base-instance) (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: arrays-indirect-command-count (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf arrays-indirect-command-count) (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: arrays-indirect-command-first (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf arrays-indirect-command-first) (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: arrays-indirect-command-instance-count (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf arrays-indirect-command-instance-count) (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: assocr (item alist &key key test test-not)
Package

cepl-utils.

Source

core/utils.lisp.

Reader: att-array (instance)
Writer: (setf att-array) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

array.

Reader: att-blend (instance)
Writer: (setf att-blend) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

blend.

Reader: att-bparams (instance)
Writer: (setf att-bparams) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

bparams.

Reader: att-owned-p (instance)
Writer: (setf att-owned-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

owned-p.

Reader: att-viewport (instance)
Writer: (setf att-viewport) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

viewport.

Function: attachment (fbo attachment-name)

This function retrieves the ‘attachment‘ named by attachment-name from the given ‘fbo‘. The result is a ‘gpu-array‘

The attachment-name can be one of the following:

a positive integer - In which case this function returns the
nth color-attachments where (= n attachment-name)

:d - the depth-attachment is returned

:s - the stencil-attachment is returned [0]

:ds - the depth-stencil-attachment is returned [0]

You can also setf this function, the value must be a texture-backed gpu-array with a valid element-type for that attachment.

For color attachments this means the element type must be a member of
the ‘*color-renderable-formats*‘ list

For color attachments this means the element type must be a member of
the ‘*depth-formats*‘ list

For stencil attachments this means the element type must be a member of the ‘*stencil-formats*‘ list

For depth-stencil attachments this means the element type must be a member of the ‘*depth-stencil-formats*‘ list

[0] *WARNING:* :s & :ds are not supported in the current version of CEPL

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: (setf attachment) (fbo attachment-name)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: attachment-blending (fbo attachment-name)

This function returns the blending parameters that will be used when rendering into the specified ‘attachment‘ on the given ‘fbo‘

Blending parameters tell OpenGL how values written into a ‘gpu-array‘ should be combined with any values that are already present.

The canonical use for this is implementing transparency.

The details of blending parameters and where they can be used is best covered in the docstring for the ‘blending-params‘ struct.

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: (setf attachment-blending) (fbo attachment-name)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: attachment-pattern (&rest vals)

This function returns a typed simple-array with is suitable to pass as the :draw-buffers argument in ‘with-fbo-bound‘.

The arguments must evaluate to numbers of type (unsigned-byte 16).

When called inline in a ‘with-fbo-bound‘ form there is an opportunity for CEPL to optimize the code. For example in this case

(defun foo (fbo)
(with-fbo-bound (fbo :draw-buffers (attachment-pattern 0 2)) ..
etc))

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: attachment-tex (fbo attachment-name)

This function take an ‘fbo‘ and the name of an ‘attachment‘. It then returns the ‘texture‘ that backs the ‘gpu-array‘ in the specified attachment.

It is equivalent to writing:

(gpu-array-texture (attachment fbo attachmnent-name))

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: attachment-viewport (fbo attachment-name)

This function takes an ‘fbo‘ and attachment-name and returns a new ‘viewport‘ whos dimensionsmatch those of the ‘gpu-array‘ connected to the ‘attachment‘.

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: backed-by (gpu-array)

This function takes a ‘gpu-array‘ and returns either :texture or :buffer depending on whether it is a texture-backed gpu-array or a buffer-backed gpu-array.

Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Function: bake-uniforms (pipeline &rest uniforms &key &allow-other-keys)

__WARNING__ EXPRERIMENTAL FEATURE

This allows you to create a new lambda-pipeline from existing pipeline whilst also fixing the values for certain uniforms.

These values will be baked into the gpu-code so that they will not need to be uploaded each time the pipeline is mapped over.

For example:

(defpipeline-g draw-cube ()
:vertex (draw-cube-vert g-pnt)
:fragment (draw-cube-frag :vec2))

(defun fix-cube-size (size)
(bake-uniforms #’draw-cube :edge-length (float size)))

Package

cepl.pipelines.

Source

core/pipelines/bake.lisp.

Function: blending-params (fbo &optional attachment-name)

This function, when passed an ‘fbo‘ or attachment will return the ‘blending-params‘ for that object.

For details on what blending-params are, see the docstring for the blending-params struct

Package

%cepl.types.

Source

core/blending/blending.lisp.

Function: (setf blending-params) (fbo &optional attachment-name)
Package

%cepl.types.

Source

core/blending/blending.lisp.

Reader: blending-params-destination-alpha (instance)
Writer: (setf blending-params-destination-alpha) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

destination-alpha.

Reader: blending-params-destination-rgb (instance)
Writer: (setf blending-params-destination-rgb) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

destination-rgb.

Reader: blending-params-mode-alpha (instance)
Writer: (setf blending-params-mode-alpha) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

mode-alpha.

Reader: blending-params-mode-rgb (instance)
Writer: (setf blending-params-mode-rgb) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

mode-rgb.

Function: blending-params-p (object)

This function returns t when the given value is a ‘blending-params‘ object, otherwise it returns nil

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: blending-params-source-alpha (instance)
Writer: (setf blending-params-source-alpha) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

source-alpha.

Reader: blending-params-source-rgb (instance)
Writer: (setf blending-params-source-rgb) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

source-rgb.

Function: buffer-data (buffer c-array &key target usage offset byte-size)

This function populates the ‘gpu-buffer‘ with the contents of the ‘c-array‘.

You also pass in the buffer type and the draw type this buffer is to be used for.

The function returns a buffer object with its format slot populated with the details of the data stored within the buffer

Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: buffer-data-raw (data-pointer byte-size buffer &optional target usage byte-offset)

This function populates an opengl buffer with the ’data-byte-size’ bytes of data from the given point, optionally at the offset provided.

You also pass in the buffer type and the draw type this buffer is to be
used for.

The function returns a buffer object with its format slot populated with the details of the data stored within the buffer

Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: buffer-reserve-block (buffer type dimensions target usage &key row-alignment)

This function creates an empty block of data in the opengl buffer equal in size to:

(* length size-in-bytes-of-type).

It will remove ALL data currently in the buffer

Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Reader: buffer-stream-%index-type-enum (instance)
Writer: (setf buffer-stream-%index-type-enum) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

%index-type-enum.

Reader: buffer-stream-%index-type-size (instance)
Writer: (setf buffer-stream-%index-type-size) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

%index-type-size.

Reader: buffer-stream-%primitive (instance)
Writer: (setf buffer-stream-%primitive) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

%primitive.

Reader: buffer-stream-%start (instance)
Writer: (setf buffer-stream-%start) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

%start.

Reader: buffer-stream-%start-byte (instance)
Writer: (setf buffer-stream-%start-byte) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

%start-byte.

Reader: buffer-stream-base-vertex (instance)
Writer: (setf buffer-stream-base-vertex) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

base-vertex.

Reader: buffer-stream-draw-mode-val (instance)
Writer: (setf buffer-stream-draw-mode-val) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

draw-mode-val.

Reader: buffer-stream-gpu-arrays (instance)

When you construct a buffer-stream it will (by default) hold onto the gpu-arrays that were composed.

This function when given a buffer-stream will return those stored gpu-arrays

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

gpu-arrays.

Writer: (setf buffer-stream-gpu-arrays) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

gpu-arrays.

Function: buffer-stream-index-type (stream)

When passed a buffer-stream with an index this function will return the element-type of the index-data.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-stream-index-type) (stream)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: buffer-stream-length (instance)

Returns the number of elements in the buffer-stream

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

length.

Writer: (setf buffer-stream-length) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

length.

Reader: buffer-stream-managed (instance)
Writer: (setf buffer-stream-managed) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

managed.

Function: buffer-stream-p (object)

Returns t if the value passed is a buffer-stream

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: buffer-stream-patch-length (instance)
Writer: (setf buffer-stream-patch-length) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

patch-length.

Function: buffer-stream-primitive (stream)

This function returns the primitive that the data pulled from buffer stream represents.

The primitive says what the gpu will draw this data as. It can be any one of:

:points
:lines
:line-loop
:line-strip
:lines-adjacency
:line-strip-adjacency
:triangles
:triangle-fan
:triangle-strip
:triangles-adjacency
:triangle-strip-adjacency
(:patch <patch-size>)

By default the primitive-type is :triangles

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-stream-primitive) (stream)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: buffer-stream-primitive-group-id (instance)
Writer: (setf buffer-stream-primitive-group-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

primitive-group-id.

Function: buffer-stream-start (stream)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-stream-start) (stream)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-stream-start-byte (stream)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-stream-start-byte) (stream)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: buffer-stream-vao (instance)

Returns the OpenGL Vertex Array Object (VAO) owned by this stream.

Do not modify this unless you are sure what you are doing.
In most cases you do not need to interact with the VAO directly

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

vao.

Writer: (setf buffer-stream-vao) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

vao.

Reader: buffer-texture-backing-array (instance)
Writer: (setf buffer-texture-backing-array) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

backing-array.

Reader: buffer-texture-owns-array (instance)
Writer: (setf buffer-texture-owns-array) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

owns-array.

Function: buffer-texture-p (object)

Return t if the given value is a ‘texture‘ who data is stored in a ‘gpu-buffer‘ as opposed to the usual texture memory. Returns nil otherwise

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: c-array-byte-size (instance)
Writer: (setf c-array-byte-size) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

byte-size.

Reader: c-array-dimensions (instance)

‘C-ARRAY-DIMENSIONS‘ takes a ‘c-array‘ as an argument and returns the dimensions of the c-array

You can also use the generic function ‘DIMENSIONS‘ to get the same result.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

dimensions.

Writer: (setf c-array-dimensions) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

dimensions.

Function: c-array-element-byte-size (c-array)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: c-array-element-from-foreign (instance)
Writer: (setf c-array-element-from-foreign) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

element-from-foreign.

Reader: c-array-element-pixel-format (instance)
Writer: (setf c-array-element-pixel-format) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

element-pixel-format.

Reader: c-array-element-to-foreign (instance)
Writer: (setf c-array-element-to-foreign) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

element-to-foreign.

Reader: c-array-element-type (instance)

‘C-ARRAY-POINTER‘ takes a ‘c-array‘ as an argument and returns the type of the elements of the array.

You can also use the generic function ‘ELEMENT-TYPE‘ to get the same result.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

element-type.

Writer: (setf c-array-element-type) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

element-type.

Reader: c-array-free (instance)
Writer: (setf c-array-free) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

free.

Function: c-array-p (object)

Return t if the argument is a ‘c-array‘. Returns nil otherwise.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: c-array-pointer (instance)

‘C-ARRAY-POINTER‘ takes a ‘c-array‘ as an argument and returns the pointer to the foreign data.

You can also use the generic function ‘POINTER‘ to get the same result.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

pointer.

Writer: (setf c-array-pointer) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

pointer.

Reader: c-array-row-alignment (instance)
Writer: (setf c-array-row-alignment) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

row-alignment.

Reader: c-array-sizes (instance)
Writer: (setf c-array-sizes) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

sizes.

Reader: c-array-struct-element-typep (instance)
Writer: (setf c-array-struct-element-typep) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

struct-element-typep.

Reader: c-array-total-size (instance)
Writer: (setf c-array-total-size) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

total-size.

Function: calc-block-layout (layout-specifier varjo-struct-type-name)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-struct-layout-from-name-type-pairs (layout-specifier name name-type-pairs)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: can-bind-query-p (cepl-context query)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: cepl-context ()
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: cepl-describe (name &optional stream)
Package

cepl.

Source

core/repl.lisp.

Function: cffi-type->gl-type (type)
Package

cepl.internals.

Source

core/internals.lisp.

Function: check-array-sizes-for-copy (src-dims dst-dims)
Package

%cepl.types.

Source

core/types/checks.lisp.

Function: check-array-types-for-copy (src-elem-type dst-elem-type)
Package

%cepl.types.

Source

core/types/checks.lisp.

Function: check-framebuffer-status (fbo)

This function asks OpenGL to check the given ‘FBO‘ and ensure that it is
’complete’.

This function will either return the particular ’framebuffer complete’ flag or
will throw a condition with an explanation of the problem.

For a full rundown on what it means for a fbo to be complete see:
[glwiki- framebuffer completeness](https://www.opengl.org/wiki/Framebuffer_Object#Framebuffer_Completeness)

All fbos made in CEPL using ‘make-fbo‘ are checked for completeness before
being returned to the user.

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: clear (&optional target)

What this function will clear depends on what is passed:

- a ‘fbo‘ - See ’clearing fbos’ below
- an ‘attachment‘ - See ’clearing a single attachment’ below
- nothing - The ’current fbo’ will be cleared

**– Clearing Fbos –**

In this case clearing means that all the elements of the attachments will be set to a certain value. The value that the attachment’s ‘gpu-array‘s will be set to varies based on the attachment.

- color attachments: Will be set to the value set in #’gl:clear-color
- depth attachments: Will be set to the value set in #’gl:clear-depth
- stencil attachments: Will be set to the value set in #’gl:clear-stencil

You can also use ‘clear-fbo‘ for this task

**– Clearing a single attachment –**

Not currently implemented

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: clear-attachments (&rest attachments)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: clear-color (&optional cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Function: (setf clear-color) (&optional cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Function: clear-fbo (fbo &rest attachments)

This function will set the elements of the ‘attachment‘s of the ‘fbo‘ to a certain value. The value that the attachment’s ‘gpu-array‘s will be set to varies based on the attachment.

- color attachments: Will be set to the value set in #’gl:clear-color - depth attachments: Will be set to the value set in #’gl:clear-depth - stencil attachments: Will be set to the value set in #’gl:clear-stencil

You can also perform this action by calling ‘clear‘ with an fbo

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: clone-c-array (c-array)

Takes a ‘c-array‘ and makes a new c-array with the same contents as the the original. The contents in foreign memory are copied.

Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: cls ()

CLS is here as it reminds me of qbasic and that makes me happy.

It calls #’clear and #’swap twice so dont use this in your actually rendering code. It can be handy though if you want to clear the screen from the repl.

Package

cepl.

Source

core/repl.lisp.

Function: color-attachment-enum (attachment-num)
Package

cepl.internals.

Source

core/fbos/fbo.lisp.

Function: color-attachments (&rest vals)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: color-mask (index &optional cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Function: (setf color-mask) (index &optional cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Function: color-masks (&optional cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Function: (setf color-masks) (&optional cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Function: color-renderable-formatp (format)

This function returns t if the value provided is a keyword that can be found in *color-renderable-formats*

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Function: compare (sampler)

This function sets the comparison mode of the ‘texture‘ or ‘sampler‘ given

-WARNING-

This feature is currently unsupported until shadow samplers are more fully tested in CEPL. Use at your own risk

**– Comparison –**

Depth ‘texture‘s (textures that have a depth component image format) can be sampled in one of two ways. They can be sampled as a normal texture, which simply retrieves the depth value (with filtering applied). This will return a vec4 containing a single floating-point value.

They can also be fetched in comparison mode. This means that sampling from the texture requires a value to compare to those pulled from the texture; this value is called the reference value. The result of the comparison depends on the comparison function set in the texture. If the function succeeds, the resulting value is 1s0; if it fails, it is 0s0.

When linear filtering is used, the actual returned value is implementation-defined. However, the value will be on the range 0 → 1 and will be proportional to the number of neighboring texels that pass the comparison based on the single given value.

If the texture is a normalized integer depth format, then the reference value is clamped to 0 → 1, to match the values from the texture. Otherwise, the value is not clamped.

Using this mode requires two special settings. First, the sampler used in GLSL must be a shadow sampler. Second, the texture used in that sampler must have activated depth comparison mode. Attempting to use a texture without comparison with a shadow sampler, or vice-versa, will result in an error upon rendering.

To set the texture to comparison mode, set the :texture-compare-mode texture parameter to :compare-ref-to-texture. The comparison function to use when comparing the reference to the texture is set with the :texture-compare-func texture parameter. Acceptable values are:

:never (always fails)
:always (always succeeds)
:less
:lequal
:equal,
:not-equal
:gequal
:greater

The comparison works as follows:

(funcall operator ref texture)

where ref is the reference value given to the texture lookup function by GLSL, and texture is the value fetched from the texture. So :LESS will be true if the reference value is strictly less than the value pulled from the texture.

Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: (setf compare) (sampler)
Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: compile-g (name &optional definition)

This function takes a lambda-g form and compiles it to a gpu-lambda object.

This is used for similar reasons to ‘compile‘ in Common Lisp, you have a lambda definition as lists and you want a compiled lambda.

The result of this function is suitable for passing to pipeline-g which lets you define a map-g’able pipeline at runtime.

Whilst this shares the same signature as CL’s #’compile in our version the ’name’ argument must be nil.

Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: compute-space-as-uvec3 (space)
Package

cepl.compute.

Source

core/compute/compute.lisp.

Function: (setf compute-space-as-uvec3) (space)
Package

cepl.compute.

Source

core/compute/compute.lisp.

Function: compute-space-dimensions (space)
Package

cepl.compute.

Source

core/compute/compute.lisp.

Function: (setf compute-space-dimensions) (space)
Package

cepl.compute.

Source

core/compute/compute.lisp.

Reader: compute-space-size-x (instance)
Writer: (setf compute-space-size-x) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

size-x.

Reader: compute-space-size-y (instance)
Writer: (setf compute-space-size-y) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

size-y.

Reader: compute-space-size-z (instance)
Writer: (setf compute-space-size-z) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

size-z.

Function: consecutive-integers-p (integers)
Package

cepl-utils.

Source

core/utils.lisp.

Function: context-id (context)
Package

cepl.context.

Source

core/context/types.lisp.

Function: copy-blending-params (instance)

This function, when passed a ‘blending-params‘ object, will create a new blending-params object with the same settings as the one passed.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-buffer-backed-gpu-array-to-new-c-array (src)
Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Function: copy-buffer-backed-gpu-array-to-new-lisp-data (src)
Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Function: copy-buffer-backed-gpu-array-to-texture-backed-gpu-array (src dst)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: copy-c-array-to-buffer-backed-gpu-array (src dst)
Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Function: copy-c-array-to-new-lisp-data (src)
Package

cepl.c-arrays.

Source

core/c-arrays/rest.lisp.

Function: copy-c-array-to-texture-backed-gpu-array (src dst)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: copy-lisp-data-to-buffer-backed-gpu-array (src dst)
Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Function: copy-lisp-data-to-c-array (c-array data &optional check-sizes)
Package

cepl.c-arrays.

Source

core/c-arrays/populate.lisp.

Function: copy-lisp-data-to-texture-backed-gpu-array (src dst)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: copy-texture-backed-gpu-array-to-buffer-backed-gpu-array (src dst)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: copy-texture-backed-gpu-array-to-c-array (src dst)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: copy-texture-backed-gpu-array-to-new-buffer-backed-gpu-array (src)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: copy-texture-backed-gpu-array-to-new-c-array (src)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: copy-texture-backed-gpu-array-to-new-lisp-data (src)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: copy-viewport (instance)

This function returns a new ‘viewport‘ with identical origin and resolution to the viewport provided.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: cull-face (&optional cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Function: (setf cull-face) (&optional cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Function: current-stencil-params (face &optional cepl-context)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: (setf current-stencil-params) (face &optional cepl-context)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: current-surface (&optional cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: current-viewport (&optional cepl-context)

This function returns the ‘viewport‘ that is current in this scope.

If no other code in the callstack has used ‘with-viewport‘ or ‘with-fbo-viewport‘ then the result will be the default viewport.

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: default-fbo (&optional cepl-context)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: depth-clamp (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: (setf depth-clamp) (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: depth-formatp (format)

This function returns t if the value provided is a keyword that can be found in *depth-formats*

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Function: depth-mask (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: (setf depth-mask) (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: depth-range-vec2 (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: (setf depth-range-vec2) (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: depth-stencil-formatp (format)

This function returns t if the value provided is a keyword that can be found in *depth-stencil-formats*

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Function: depth-test-function (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: (setf depth-test-function) (&optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: destination-alpha (fbo &optional attachment-name)

This function, when passed a ‘blending-params‘ object, will return the name of the function that will be applied to the alpha value that is currently in the ‘fbo‘ and is about to be combined with the value coming from the pipeline.

The result will be one of the following:

:zero
:one
:src-color
:one-minus-src-color
:dst-color
:one-minus-dst-color
:src-alpha
:one-minus-src-alpha
:dst-alpha
:one-minus-dst-alpha
:constant-color
:one-minus-constant-color
:constant-alpha
:one-minus-constant-alpha
:src-alpha-saturate
:src1-color
:one-minus-src-color
:src1-alpha
:one-minus-src-alpha

To see more info on this subject please see the doc-string for the blending-params struct.

Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: (setf destination-alpha) (fbo &optional attachment-name)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: destination-rgb (fbo &optional attachment-name)

This function, when passed a ‘blending-params‘ object, will return the name of the function that will be applied to the color value that is currently in the ‘fbo‘ and is about to be combined with the value coming from the pipeline.

The result will be one of the following:

:zero
:one
:src-color
:one-minus-src-color
:dst-color
:one-minus-dst-color
:src-alpha
:one-minus-src-alpha
:dst-alpha
:one-minus-dst-alpha
:constant-color
:one-minus-constant-color
:constant-alpha
:one-minus-constant-alpha
:src-alpha-saturate
:src1-color
:one-minus-src-color
:src1-alpha
:one-minus-src-alpha

To see more info on this subject please see the doc-string for the blending-params struct.

Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: (setf destination-rgb) (fbo &optional attachment-name)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: destroy-surface (surface &rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: double-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: double-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: draw-fbo-bound (cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: (setf draw-fbo-bound) (cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: draw-mode-group-id (x)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: elements-indirect-command-base-instance (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf elements-indirect-command-base-instance) (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: elements-indirect-command-base-vertex (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf elements-indirect-command-base-vertex) (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: elements-indirect-command-count (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf elements-indirect-command-count) (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: elements-indirect-command-first-index (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf elements-indirect-command-first-index) (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: elements-indirect-command-instance-count (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf elements-indirect-command-instance-count) (wrapped-object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: empty-fbo-params (fbo)
Package

%cepl.types.

Source

core/fbos/fbo.lisp.

Function: empty-fbo-params-dimensions (params)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: (setf empty-fbo-params-dimensions) (params)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: empty-fbo-params-fixed-sample-locations-p (params)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: (setf empty-fbo-params-fixed-sample-locations-p) (params)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: empty-fbo-params-layer-count (params)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: (setf empty-fbo-params-layer-count) (params)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: empty-fbo-params-samples (params)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: (setf empty-fbo-params-samples) (params)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: empty-fbo-params-viewport (params)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: ensure-vec-index (vec index null-element &optional element-type)
Package

cepl-utils.

Source

core/utils.lisp.

Function: fbo-bound (cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: (setf fbo-bound) (cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: fbo-empty-p (fbo)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: fbo-p (object)

This function will return t if the given value is an ‘fbo‘, otherwise it will return nil

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: file-to-string (path)

Sucks up an entire file from PATH into a freshly-allocated string, returning two values: the string and the number of bytes read.

Package

cepl-utils.

Source

core/utils.lisp.

Function: filter-hash (function hash-table)

map through a hash and actually return something

Package

cepl-utils.

Source

core/utils.lisp.

Function: find-in-tree (item tree &key test)
Package

cepl-utils.

Source

core/utils.lisp.

Function: flatten (x)

Walks a list tree and flattens it (returns a 1d list containing all the elements from the tree)

Package

cepl-utils.

Source

core/utils.lisp.

Function: float-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: float-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: force-bind-query (cepl-context query)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: force-unbind-query (cepl-context query)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: free-buffer (buffer)

This function, when passed a ‘gpu-buffer‘ will free the memory on the gpu and ’blank’ the ‘gpu-buffer‘.

Blanking in this case means that the slots of the ‘gpu-buffer‘ will all be set to default values.

Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: free-buffer-stream (buffer-stream)

Calling this with a buffer-stream will free the VAO owned by this buffer-stream and blank the buffer-stream object.

It will not free any of the gpu-data that was composed to make this stream.

Calling the generic function ‘free‘ with a buffer-stream will call this function

Package

cepl.streams.

Source

core/streams/buffer-streams.lisp.

Function: free-buffers (buffers)

This function, when passed a list of gpus-buffer will free the gpu memory for all the gpus-buffers and ’blank’ them.

Blanking in this case means that the slots of each ‘gpu-buffer‘ will all be set to default values.

Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: free-c-array (c-array)

Frees the foreign memory allocated with the ‘c-array‘ and ’blanks’ the c-array.

Blanking the c-array means its fields will be set to default values,
for example dimensions will be 0, the pointer will be null etc.

The generic function ‘free‘ will call ‘free-c-array‘ when passed a c-array.

Package

cepl.c-arrays.

Source

core/c-arrays/def.lisp.

Function: free-gpu-fence (fence)
Package

cepl.sync.

Source

core/sync/sync.lisp.

Function: free-pipeline (pipeline)

This function takes a pipeline designator[0] and frees it, this releases frees the gl-program object.

[0] either a lambda-pipeline or a symbol naming a pipeline

Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: free-sampler (sampler)

Calling this with a ‘sampler‘ will free the gl sampler and blank the lisp object representing it.

Calling the generic function ‘free‘ with a sampler will call this function

Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: free-vao (vao)

Takes a GL VAO and deletes it

Package

cepl.vaos.

Source

core/vaos/vaos.lisp.

Function: free-vaos (vaos)

Takes a list of GL VAOs and deletes them.

This function exists as a minor optimization.

Package

cepl.vaos.

Source

core/vaos/vaos.lisp.

Function: front-face (&optional cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Function: (setf front-face) (&optional cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Function: funcall-g (name &rest args)

funcall-g is an experimental function. What it aims to allow you to do is to generate and run a pipeline which runs the requested function once with the given arguments on the GPU.

By doing this it gives you a way to try out your gpu-functions from the REPL without having to make a pipeline map-g over it whilst use ssbos or transform-feedback to capture the result.

Currently this only works with functions that would work within a vertex shader (so things like gl-frag-pos will not work) however we want to expand on this in the future.

This is not intended to be used *anywhere* where performance matters, it was made solely as a debugging/development aid. Every time it is run it must:

- generate a pipeline
- compile it
- map-g over it
- marshal the results back to lisp
- free the pipeline

This is *extremly* expensive, however as long as it takes less that 20ms or so it is fast enough for use from the repl.

Package

cepl.pipelines.

Source

core/pipelines/funcall-g.lisp.

Function: generate-mipmaps (texture)

Calling this with a ‘texture‘ asks OpenGL to generate mipmaps for the texture.

You do not normally need to use this function as you can use the :mipmaps argument on ‘make-texture‘. See ‘make-texture‘ for more details.

Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: gl-enum (kwd)
Package

cepl-utils.

Source

core/utils.lisp.

Function: gl-initialized-p (&optional context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: gl-type-size (type)
Package

cepl.internals.

Source

core/internals.lisp.

Function: gpu-array-access-style (gpu-array)

When passed a buffer-backed ‘gpu-array‘ this function will return the access-style of the underlying gpu-buffer.

The access-style of a gpu-array (or ‘gpu-buffer‘) is a hint to OpenGL on how you intend to use the array. It is optional whether your gpu manufacturer’s implementation of GL takes any notice of this option. When they do take notice of it, it will to optimize access to the underlying data.

There are also no repercussions for accessing the data in a way contrary to the declared access-style (other than potential performance costs).

Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Reader: gpu-array-bb-access-style (instance)
Writer: (setf gpu-array-bb-access-style) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

access-style.

Reader: gpu-array-bb-buffer (instance)
Writer: (setf gpu-array-bb-buffer) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

buffer.

Reader: gpu-array-bb-byte-size (instance)
Writer: (setf gpu-array-bb-byte-size) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

byte-size.

Reader: gpu-array-bb-element-byte-size (instance)
Writer: (setf gpu-array-bb-element-byte-size) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

element-byte-size.

Reader: gpu-array-bb-element-pixel-format (instance)
Writer: (setf gpu-array-bb-element-pixel-format) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

element-pixel-format.

Reader: gpu-array-bb-element-type (instance)
Writer: (setf gpu-array-bb-element-type) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

element-type.

Reader: gpu-array-bb-offset-in-bytes-into-buffer (instance)
Writer: (setf gpu-array-bb-offset-in-bytes-into-buffer) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

offset-in-bytes-into-buffer.

Function: gpu-array-bb-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: gpu-array-bb-row-alignment (instance)
Writer: (setf gpu-array-bb-row-alignment) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

row-alignment.

Function: gpu-array-buffer (gpu-array)

When passed a buffer-backed ‘gpu-array‘ this function will return the ‘gpu-buffer‘ backing this array.

Note that if you made the array with ‘make-gpu-arrays‘ then there will be multiple gpu-arrays sharing this buffer, so care should be taken when modifying or freeing data.

Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: gpu-array-buffer-id (gpu-array)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Reader: gpu-array-dimensions (instance)

Return a list whose elements are the dimensions of the array.

You can also use the generic function ‘dimensions‘ to get this info.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

dimensions.

Writer: (setf gpu-array-dimensions) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

dimensions.

Function: gpu-array-element-type (gpu-array)

Will return the type of the elements in the ‘gpu-array‘ given.

If this is a texture-backed gpu-array then the element-type will be the same as the ’image-format’ of the ‘texture‘.

Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Function: gpu-array-face-num (gpu-array)

When passed a texture-backed ‘gpu-array‘ this function will return the index of the ‘texture‘’s cubeface that contains this gpu-array. This only truly applies to gpu-arrays belonging to cubemap ‘texture‘s, for all gpu-arrays this number will always be 0.

Package

cepl.gpu-arrays.texture-backed.

Source

core/gpu-arrays/texture-backed.lisp.

Function: gpu-array-layer-num (gpu-array)

When passed a texture-backed ‘gpu-array‘ this function will return the index of the gpu-array within the array-textures. This only truly applies to gpu-arrays belonging to array-textures, for all gpu-arrays this number will always be 0.

Package

cepl.gpu-arrays.texture-backed.

Source

core/gpu-arrays/texture-backed.lisp.

Function: gpu-array-level-num (gpu-array)

When passed a texture-backed ‘gpu-array‘ this function will return the mipmap level the gpu-array resides on within the ‘texture‘.

This only truly applies to gpu-arrays with mipmaps, for all gpu-arrays this number will always be 0.

Package

cepl.gpu-arrays.texture-backed.

Source

core/gpu-arrays/texture-backed.lisp.

Function: gpu-array-p (object)

Will return t if the value given is a ‘gpu-array‘.

This will return t for both texture-backed and buffer-backed gpu-arrays

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: gpu-array-t-face-num (instance)
Writer: (setf gpu-array-t-face-num) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

face-num.

Reader: gpu-array-t-image-format (instance)
Writer: (setf gpu-array-t-image-format) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

image-format.

Reader: gpu-array-t-layer-num (instance)
Writer: (setf gpu-array-t-layer-num) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

layer-num.

Reader: gpu-array-t-level-num (instance)
Writer: (setf gpu-array-t-level-num) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

level-num.

Function: gpu-array-t-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: gpu-array-t-texture (instance)
Writer: (setf gpu-array-t-texture) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

texture.

Reader: gpu-array-t-texture-type (instance)
Writer: (setf gpu-array-t-texture-type) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

texture-type.

Function: gpu-array-texture (gpu-array)
Package

cepl.gpu-arrays.texture-backed.

Source

core/gpu-arrays/texture-backed.lisp.

Function: gpu-array-texture-type (gpu-array)

When passed a texture-backed ‘gpu-array‘ this function will return the type of the ‘texture‘ containing this gpu-array.

The result will be one of the following:

:texture-1d
:texture-2d
:texture-3d
:texture-1d-array
:texture-2d-array
:texture-cube-map
:texture-cube-map-array
:texture-rectangle
:texture-buffer
:texture-buffer
:texture-buffer
:texture-2d-multisample
:texture-2d-multisample-array

Package

cepl.gpu-arrays.texture-backed.

Source

core/gpu-arrays/texture-backed.lisp.

Reader: gpu-buffer-arrays (instance)

This function returns an array of the raw :uint8 ‘gpu-array‘s that make up the data in this ‘gpu-buffer‘.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

arrays.

Writer: (setf gpu-buffer-arrays) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

arrays.

Function: gpu-buffer-bound (cepl-context target)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: (setf gpu-buffer-bound) (ctx target)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Reader: gpu-buffer-cache-id (instance)
Writer: (setf gpu-buffer-cache-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cache-id.

Reader: gpu-buffer-id (instance)

This function, when passed a ‘gpu-buffer‘ will return the OpenGL buffer object from the ‘gpu-buffer‘.

It is not recommended to modify this directly as the changes from doing so won’t be reflected in the layout of the ‘gpu-buffer‘, which may potentially put the ‘gpu-buffer‘ (and and ‘gpu-array‘ or ‘ubo‘ using it) into an invalid state.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Writer: (setf gpu-buffer-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Function: gpu-buffer-p (object)

This function returns t if the given value is a ‘gpu-buffer‘. Otherwise it returns nil.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: gpu-fence-signalled-p (fence)
Package

cepl.sync.

Source

core/sync/sync.lisp.

Function: gpu-functions (name)

This function returns all the signatures of the gpu-functions named ’name’.

The reason there may be many is that functions can be ’overloaded’ so you can have multiple gpu-functions with the same name as long as they can be uniquely identified by the combination of their name and argument types.

Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Reader: gpu-query-cache-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cache-id.

Reader: gpu-query-enum (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

enum.

Reader: gpu-query-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Function: gpu-query-result-available-p (query)
Package

cepl.queries.

Source

core/queries/query.lisp.

Function: group (source n)

This takes a flat list and emit a list of lists, each n long containing the elements of the original list

Package

cepl-utils.

Source

core/utils.lisp.

Function: half-float-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: half-float-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: half-vec2-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: half-vec2-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: half-vec3-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: half-vec3-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: half-vec4-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: half-vec4-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: has-feature (x)
Package

cepl.context.

Source

core/context/gl-context.lisp.

Function: hash-keys (hash-table)
Package

cepl-utils.

Source

core/utils.lisp.

Function: hash-values (hash-table)
Package

cepl-utils.

Source

core/utils.lisp.

Function: hidden-symb (symbol &optional sub-name)
Package

cepl-utils.

Source

core/utils.lisp.

Function: holds-gl-object-ref-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: host-step (win)

not external

Package

cepl.host.

Source

host/api-common.lisp.

Function: host-swap (win)

not external

Package

cepl.host.

Source

host/api-common.lisp.

Function: image-format->lisp-type (image-format)

This function, when given a image-format name, will attempt to find and return the name of a lisp type that is equivalent.

If no such type is found then nil is returned

Package

cepl.types.

Source

core/types/pixel-format.lisp.

Function: image-format->pixel-format (image-format &key error-if-missing)

This function, when given an image-format name, will attempt to find and return equivalent equivalent ‘pixel-format‘.

If no such type is found then nil is returned

Package

cepl.types.

Source

core/types/pixel-format.lisp.

Function: image-formatp (format)

This function returns t if the value provided is a keyword that can be found in *image-formats*

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Function: indexp (x)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: initialize (&rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: initialize-cepl (&key gl-version host-init-flags)

This is how we initialize CEPL. It is important to do this before using any api that touches the gpu.

When you call this it does a few things:
- Asks the host to initialize itself
- Asks the host for an opengl context and window
- Wraps the gl-context in CEPL’s own context object
- Sets up some internals systems

And finally returns t.

CEPL is now ready to use.

Package

cepl.

Source

core/repl.lisp.

Function: int-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int32-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int32-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int8-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int8-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int8-vec2-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int8-vec2-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int8-vec3-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int8-vec3-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int8-vec4-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: int8-vec4-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: intersperse (symb sequence)
Package

cepl-utils.

Source

core/utils.lisp.

Function: ivec2-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: ivec2-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: ivec3-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: ivec3-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: ivec4-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: ivec4-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: just-ignore (&rest args)
Package

cepl-utils.

Source

core/utils.lisp.

Function: keep (incoming-val stored-val)

Always returns the stored-val

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.

Function: kwd (&rest args)

This takes a list of symbols (or strings) and outputs one keyword symbol.
If the input is symbol/s then the output is a regular keyword If the input is string/s, then the output is
a :|keyword like this|

Package

cepl-utils.

Source

core/utils.lisp.

Function: last1 (list)
Package

cepl-utils.

Source

core/utils.lisp.

Function: lisp-type->image-format (lisp-type)

This function, when given a lisp type name, will attempt to find and return the name of a GL image-format that is equivalent.

If no such type is found then nil is returned

Package

cepl.types.

Source

core/types/pixel-format.lisp.

Function: lispify-name (name)

take a string and changes it to uppercase and replaces all underscores _ with minus symbols -

Package

cepl-utils.

Source

core/utils.lisp.

Function: list-not-consp (x)
Package

cepl-utils.

Source

core/utils.lisp.

Function: listen-to-lifecycle-changes (func &rest states-to-subscribe-to)
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: listify (x)
Package

cepl-utils.

Source

core/utils.lisp.

Function: load-in-release-mode (&optional cepl-host)
Package

cepl.build.

Source

build/build.lisp.

Function: lod-bias (sampler)

This function sets the lod-bias of the given ‘texture‘ or ‘sampler‘

**– LOD –**

There is a pair of sampling parameters that affect the mipmap image selection: :max-lod and :min-lod (floating-point values).

The way these work in mipmap selection is quite complicated; the specification goes into full detail about it.

example:

(setf (min-lod texture-or-sampler) value)
(setf (max-lod texture-or-sampler) value)

LOD bias:
The mipmap image selection process can be adjusted coarsely by using the :lod-bias sampling parameter. This bias will be added to the mipmap
LOD calculation (as well as added to the bias specified in one of the ‘texture‘ accessing functions in GLSL), which is used to select the image. A positive bias means that larger mipmaps will be selected even when the texture is viewed from farther away. This can cause visual aliasing, but in small quantities it can make textures a bit more sharp.

(setf (lod-bias texture-or-sampler) value)

Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: (setf lod-bias) (sampler)
Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: magnify-filter (sampler)

This function takes a ‘sampler‘ or ‘texture‘ and sets the approach used when the area of the fragment in texture space is smaller than a texel.

**– The magnification filter –**

The magnification filter is controlled by the :magnify-filter texture parameter. This value can be :linear or :nearest.

If :nearest is used, then the implementation will select the texel nearest the texture coordinate; this is commonly called ’point sampling’).

If :linear is used, the implementation will perform a weighted linear blend between the nearest adjacent samples.

(setf (magnify-filter tex-or-sampler) :linear)
(setf (magnify-filter tex-or-sampler) :nearest)

Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: (setf magnify-filter) (sampler)
Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: make-any-samples-passed-conservative-query ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-any-samples-passed-query ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-att (&key array blend bparams owned-p viewport)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-blending-params (&key mode-rgb mode-alpha source-rgb source-alpha destination-rgb destination-alpha)

This function makes a new ‘blending-params‘ object.

The valid values for ‘source-rgb‘, ‘source-alpha‘, ‘destination-rgb‘ and ‘destination-alpha‘ are:

:zero
:one
:src-color
:one-minus-src-color
:dst-color
:one-minus-dst-color
:src-alpha
:one-minus-src-alpha
:dst-alpha
:one-minus-dst-alpha
:constant-color
:one-minus-constant-color
:constant-alpha
:one-minus-constant-alpha
:src-alpha-saturate
:src1-color
:one-minus-src-color
:src1-alpha
:one-minus-src-alpha

The valid values for ‘mode-rgb‘ and ‘mode-alpha‘ are:

:func-add
:func-subtract
:func-reverse-subtract
:min
:max

For details on their behaviour on the blending-params object please see the docstring for blending-params.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-buffer-stream (gpu-arrays &key index-array start length retain-arrays primitive base-vertex)

This function composes a number of gpu-arrays into a buffer-stream.
No data is copied, the buffer-stream simply refers to the gpu-arrays so the gpu knows where to pull data from.

You can optionally pass a gpu-array to act as an index into the other arrays.

Usually when you map over a buffer-stream it will call the pipeline pulling 1 value from each of the composed gpu-arrays on each ’iteration’[0].
When you have an index then map-g will pull 1 value from index each ’iteration’ and use that to pick which value to use from the other arrays. This approach gives bigs boosts in performance and memory usage when rendering.

The element-type of the index-array must be of the following:
:uint8 :ushort :uint :unsigned-short :unsigned-int

As well as an element type you also can specify the primitive-type. This says what the gpu will draw this data as. It can be any one of:

:points
:lines
:line-loop
:line-strip
:lines-adjacency
:line-strip-adjacency
:triangles
:triangle-fan
:triangle-strip
:triangles-adjacency
:triangle-strip-adjacency
(:patch <patch-size>)

By default the primitive-type is :triangles

It is also worth noting that you can also use gpu-sub-arrays in here if you want to limit the data you are using, for example the following is perfectly legal code:

(make-buffer-stream
:gpu-arrays ‘(,(gpu-sub-array monster-pos-data 1000 2000) ,(gpu-sub-array monster-col-data 1000 2000)) :index-array monster-index-array
:length 1000)

[0] The use of the term ’iteration’ here is quoted as the gpu is going to be doing this work in parallel, however it makes the explanation clearer so that is why it is there. If you have a clearer way of explaining the behaviour please file it as an issue on github.

Package

cepl.streams.

Source

core/streams/buffer-streams.lisp.

Function: make-buffer-stream-from-id-and-layouts (vao-gl-object data-layouts index-layout &key start length primitive)
Package

cepl.streams.

Source

core/streams/buffer-streams.lisp.

Function: make-buffer-stream-sharing (stream &optional base-vertex)
Package

cepl.streams.

Source

core/streams/buffer-streams.lisp.

Function: make-c-array (initial-contents &key dimensions element-type row-alignment)

This function will make and return a new ‘c-array‘.

It can be used in a few different ways:

- with :initial-contents to nil:
In this case you need to provide dimensions and an element-type.

- with :initial-contents populated.
The initial-contents can be a (potentially nested) list or array.

When :initial-contents is an array then the dimension of the c-array
will be the same as the array passed in. CEPL currently only supports up
to 4D c-arrays.

When the :initial-contents is a flat list then each element is used as one
element in the c-array.
If the :initial-contents is a nested list then you must either:

- specify multiple dimensions and an element-type
- specify an element-type to be some struct type, then nested lists are then
used to populate the fields of the foreign structs. For an example of this
please see [this example](https://github.com/cbaggers/cepl.examples/blob/master/examples/triangle.lisp#L30).

If the :element-type is not provided then CEPL will look at every element in
the initial-contents and try and find the smallest (in bytes) foreign type
which works for every element. This mean if the array is full of single-floats
then CEPL will choose :float, not :double.
Naturally this behaviour is too slow for use in performance critical
applications however it is nice for experimentation and working from the repl.

If you need what would be called a displaced array in lisp then please see the
‘subseq-c‘ function.

Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: make-c-array-from-pointer (dimensions element-type pointer &key free element-byte-size row-alignment)

Will create a CEPL ‘c-array‘ with the element-type and dimensions specified, and will store the pointer as where the data is expected to be.

This function does allocate the memory or validate the type or dimensions so be very careful when using this function.

Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: make-compute-space (&optional size-x size-y size-z)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-context (&key gl-version)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: make-context-shared-with-current-context ()
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: make-draw-command-c-array (stream length)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: make-draw-command-gpu-array (stream length)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: make-empty-fbo-params (&key fbo dimensions viewport layer-count samples fixed-sample-locations-p)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-fbo (&rest fuzzy-attach-args)

This, like other make-* functions in CEPL has a large variety of valid arguments. The goal of this apparent complexity is to make exploration from the repl easy, whilst still allowing absolutely control when it is needed.

Lets look at the behaviour when given different arguments

**– (make-fbo) –**

Empty FBOs are possible in CEPL, however they wernt added in GL until v4.3 so please see the empty FBO section below.

**– (make-fbo 0) –**

Make an fbo with one color attachment in attachment slot 0.
CEPL with make a ‘texture‘ with dimensions equal to that of the current ‘viewport‘ and with the element-type :rgba (which is a sensible default for a color attachment)

**– (make-fbo 0 1) –**

Make an fbo with two color attachments 1 in each of attachment slots 0 & 1. CEPL with make the textures with dimensions equal to that of the current viewport and with the element-type :rgba (which is a sensible default for a color attachment)

**– (make-fbo :d) –**

Make an fbo with one depth attachment.
CEPL with make a texture with dimensions equal to that of the current viewport and with the element-type :depth-component24 (which is a sensible default for a depth attachment)

**– (make-fbo 0 1 :d) –**

Make an fbo with two color attachments and one depth attachment.

**– (make-fbo (list 0 some-gpu-array)) –**

Makes an fbo with one color attachment whos ‘gpu-array‘ is ’some-gpu-array’

**– (make-fbo (list 0 some-texture)) –**

Makes an fbo with one color attachment whos gpu-array is (texref some-texture)

**– (make-fbo ’(0 :dimensions (100 100) :element-type :rgba8)) –**

Makes an fbo with one color attachment whos gpu-array is taken from a new texture created by taking the arguments after 0 and applying them to ‘make-texture‘

**– Any combination of the above –**

**– Empty FBOs –**

Empty FBOs are interesting in that you have a none of the pipeline outputs will be written to anywhere, but rendering can otherwise proceed as normal. They were only added in GL 4.3 so ‘make-fbo‘ will error if the current GL version is too low.

When defining an empty fbo there can be at most 1 attachment declaration.
When present the name must be NIL. You may also optionally specify the following parameters as you would in ‘make-texture‘:

- :dimensions
- :layer-count
- :samples
- :fixed-sample-locations

So the following are legal:

- ‘(make-fbo ’(nil :dimensions (1024 1024)))‘
- ‘(make-fbo ’(nil))‘
- ‘(make-fbo)‘

**– Cube Texture Initialization –**

One last variant is allowed. You are allowed to pass a cube-map texture along with and optional depth option. This will result in each face of the cube being bound to the fbo’s attachments.

(make-fbo cube-tex)

(make-fbo cube-tex ’(:d :dimensions (32 32))

(make-fbo cube-tex :d) ;; depth attachment dimensions will match faces

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: make-g-pc (&key position color)

This function returns a new instance of the gpu struct of type G-PC

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: make-g-pn (&key position normal)

This function returns a new instance of the gpu struct of type G-PN

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: make-g-pnb (&key position normal tangent bi-tangent)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: make-g-pnc (&key position normal color)

This function returns a new instance of the gpu struct of type G-PNC

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: make-g-pncb (&key position normal tangent bi-tangent color)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: make-g-pnt (&key position normal texture)

This function returns a new instance of the gpu struct of type G-PNT

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: make-g-pntb (&key position normal tangent bi-tangent texture)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: make-g-pntc (&key position normal texture color)

This function returns a new instance of the gpu struct of type G-PNTC

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: make-g-pntcb (&key position normal tangent bi-tangent texture color)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: make-g-pt (&key position texture)

This function returns a new instance of the gpu struct of type G-PT

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: make-gl-context (&rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: make-gl-context-current-on-surface (gl-context surface)
Package

cepl.host.

Source

host/api-common.lisp.

Function: make-gl-context-shared-with-current-context (&rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: make-gpu-array-from-buffer (buffer &key element-type dimensions access-style keep-data)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: make-gpu-array-from-buffer-id (gl-buffer-id &key element-type dimensions access-style)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: make-gpu-arrays (c-arrays &key access-style)

This function takes a list of x ‘c-array‘s and returns a list of x buffer-backed ‘gpu-array‘s.

The reason to use this rather than:

(mapcar ‘make-gpu-array‘ c-arrays-list)

is that all of the gpu-arrays created will share the same ‘gpu-buffer‘.

Usually you will know if you need this instead of ‘make-gpu-array‘ as you will have some behaviour or performance characteristic in mind.

Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: make-gpu-arrays-from-buffer (buffer layouts &key access-style keep-data)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: make-gpu-arrays-from-buffer-id (gl-buffer-id layouts &key access-style)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: make-gpu-buffer (&key initial-contents buffer-target usage)

This function creates and returns a new ‘gpu-buffer‘.

If you wish to populate the buffer during construction you can pass a ‘c-array‘ as the :initial-contents.

The :usage argument is a hint to OpenGL on how you intend to use the ‘gpu-buffer‘. It is optional whether your gpu manufacturer’s implementation of GL takes any notice of this option. When they do take notice of it, it will to optimize access to the underlying data.

The :target argument can take any of the following binding targets:

Buffer Binding Target Purpose ————————————————————- :array-buffer Vertex attributes
:atomic-counter-buffer Atomic counter storage
:copy-read-buffer Buffer copy source
:copy-write-buffer Buffer copy destination :dispatch-indirect-buffer Indirect compute dispatch commands :draw-indirect-buffer Indirect command arguments :element-array-buffer Vertex array indices
:pixel-pack-buffer Pixel read target
:pixel-unpack-buffer Texture data source
:query-buffer Query result buffer
:shader-storage-buffer Read-write storage for shaders
:texture-buffer Texture data buffer
:transform-feedback-buffer Transform feedback buffer
:uniform-buffer Uniform block storage

Do note that the default of :array-buffer is perfectly fine for creating the ‘gpu-buffer‘ and uploading the data. It does not limit how the buffer can be used in future parts of your program.

Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: make-gpu-buffer-from-id (gl-object &rest args &key initial-contents layouts buffer-target usage keep-data)

This function takes an existing GL Buffer Object and wraps it in a new ‘gpu-buffer‘.

If you wish to populate the buffer during construction you can pass a ‘c-array‘ as the :initial-contents.

The :usage argument is a hint to OpenGL on how you intend to use the ‘gpu-buffer‘. It is optional whether your gpu manufacturer’s implementation of GL takes any notice of this option. When they do take notice of it, it will to optimize access to the underlying data.

The :target argument can take any of the following binding targets:

Buffer Binding Target Purpose ————————————————————- :array-buffer Vertex attributes
:atomic-counter-buffer Atomic counter storage
:copy-read-buffer Buffer copy source
:copy-write-buffer Buffer copy destination :dispatch-indirect-buffer Indirect compute dispatch commands :draw-indirect-buffer Indirect command arguments :element-array-buffer Vertex array indices
:pixel-pack-buffer Pixel read target
:pixel-unpack-buffer Texture data source
:query-buffer Query result buffer
:shader-storage-buffer Read-write storage for shaders
:texture-buffer Texture data buffer
:transform-feedback-buffer Transform feedback buffer
:uniform-buffer Uniform block storage

Do note that the default of :array-buffer is perfectly fine for creating the ‘gpu-buffer‘ and uploading the data. It does not limit how the buffer can be used in future parts of your program.

Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: make-gpu-fence ()
Package

cepl.sync.

Source

core/sync/sync.lisp.

Function: make-keyword (&rest args)

This takes a list of symbols (or strings) and outputs one keyword symbol.
If the input is symbol/s then the output is a regular keyword If the input is string/s, then the output is
a :|keyword like this|

Package

cepl-utils.

Source

core/utils.lisp.

Function: make-pixel-format (&key components type normalize sizes reversed comp-length)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-primitives-generated-query ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-project (pathname &key name host repl depends-on)

This function is a simple way to make a lisp project with all the
supporting libraries to get up and running with cepl quickly.

It uses the excellent quickproject project, so before starting be sure
to run the following in your repl:

(ql:quickload :quickproject)

By default it assumes you want to use sdl2, skitter and dirt, and that
you will be using slime as the communication layer between lisp and your editor.

Valid values for the :repl argument are currently :slime or :slynk.

Package

cepl.

Source

project.lisp.

Function: make-raw-buffer-stream (&key vao start length index-type managed gpu-arrays primitive)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-render-buffer (element-type dimensions &key multisample)
Package

cepl.render-buffers.

Source

core/render-buffers/render-buffer.lisp.

Function: make-sampler-id-box (&key id shared-p)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-samples-passed-query ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-ssbo (data &optional element-type)

This function will make and return a new ‘ssbo‘

You need only provide an element type and the lisp data to populate that type.

For example, given the following type:

(defstruct-g test
(scale :float :accessor scale)
(age :int))

You create a ssbo using this type as follows:

(make-ssbo ’(1.2 10) ’test)

You can also pass in a c-array or gpu-array and omit the optional type specifier.

If you wish to make a ssbo from a specific element of a ‘c-array‘ or ‘gpu-array‘ please see the #’make-ssbo-from-array function

Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Function: make-ssbo-from-array (data &optional index element-type)

This function takes a lisp-array, ‘c-array‘ or ‘gpu-array‘ and an index.
It returns a new ‘ssbo‘ with the specified element as the data of the ssbo.

If made from a c-array or lisp-array, a fresh gpu memory is allocated to hold the data

If made from a gpu-array the ssbo simply holds a reference to the gpu-array and the index. No new memory is allocated. This means that if that gpu-array is destroyed then this ssbo is in an invalid state.

This also means it is possible to do invalid things when rendering. For example say you used the ssbo as an input whilst streaming vertex data from the same array. Consult GL documentation for details on such exceptional cases.

Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Function: make-stencil-params (&key test value mask on-stencil-test-fail on-stencil-pass-depth-test-fail on-stencil-pass-depth-test-pass)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: make-surface (&rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: make-surface-current (cepl-context surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: make-texture (initial-contents &key dimensions element-type mipmap layer-count cubes rectangle immutable buffer-storage generate-mipmaps pixel-format samples fixed-sample-locations)

This function allows you to make any kind of ‘texture‘ based on the arguments
provided. Whilst the signature is quite intimidating your rarely need to use
more than a few of the arguments to make a given texture.

For example:

(make-texture ’(1 2 3 4))

will give you a valid texture.

We will now go through the arguments and their behaviours:

**– :initial-contents :dimensions & :element-type –**

- with :initial-contents to nil:
In this case you need to provide dimensions and an element-type.

- with :initial-contents populated.
The initial-contents can be a (potentially nested) list, array or ‘c-array‘.

When the :initial-contents are a c-array then the dimensions and element-type
are taken from the c-array. As the data is already in foreign memory the
upload will be notable faster that from lisp-data->gpu as no type conversions
are needed

When the :initial-contents are an array then the dimension of the texture
will be the same as the array passed in. Remember OpenGL only allows up to
3 dimensions for the textures

When the :initial-contents is a flat list then each element is used as one
element in the textures ‘gpu-array‘

If the :initial-contents is a nested list then you must either:

- specify multiple dimensions and an element-type
- specify an element-type to be some struct type, then nested lists are then
used to populate the fields of the foreign structs. For an example of this
please see this example: https://github.com/cbaggers/cepl.examples/blob/master/examples/triangle.lisp#L30.

If the :element-type is not provided then CEPL will look at every element in
the initial-contents and try and find the smallest (in bytes) foreign type
which works for every element. This mean if the array is full of single-floats
then CEPL will choose :float, not :double.
Naturally this behaviour is too slow for use in performance critical
applications however it is nice for experimentation and working from the repl.

Extra element-type details:
Unlike c-array and gpu-arrays (which use foreign types for their elements)
textures have a different set of acceptable element-types. These are called
’image formats’.

If you provide a GL image-format as the :element-type CEPL will use it directly

If you provide a (foreign) lisp type then CEPL will try to find the appropriate
image-format for that type.

**– :pixel-format –**

If this optional argument is not nil, then CEPL will use the pixel format
provided when uploading the pixel data.

Usually this is not provided as CEPL can calculate a valid pixel-format to
use from the element-type.

**– :mipmap & :generate-mipmaps –**

If this is set to t then CEPL will make mipmaps for the ‘texture‘. The texture
will have (floor (log (apply #’max dimensions) 2)) levels of mipmaps

If this is set to a positive integer CEPL will check that the number of levels
is allowed for the dimensions given and make that many levels of mipmaps.

If generate-mipmaps is t CEPL will ask OpenGL to generate content for all the
mipmaps levels.

**– :layer-count –**

If this is set to a value greater than 1 then you are trying to create one of
the following:

:texture-1d-array
:texture-2d-array
:texture-cube-map-array

Which one is created depends on the dimensions provided and whether cubes is t.

**– :cubes –**

If this is t then you are trying to make a cube-map texture

**– :rectangle –**

If this is t then you are trying to make a rectangle texture.

This is different from a regular 2d texture (which can also be rectangular)

This texture only has one 2-dimensional ‘gpu-array‘. The texture cannot have
mipmapping. Texture coordinates used for these textures are not normalized.

**– :samples –**

Specify the number of samples in the texture (see the GL wiki for more details
on multisample textures)

**– :immutable –**

Set this to nil if you definitely dont want to use immutable texture storage.
See the docstring for ’texture for more details

**– :buffer-storage –**

If this is set to t you are trying to make a ‘buffer-texture‘.

If you set this to t then the ‘element-type‘ should NOT be an image-format. Use
a foreign lisp type instead. Or leave it nil if you want CEPL to take the type
from the initial-contents

See the docstring for ‘texture‘ for more details.

Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: make-texture-from-id (gl-object &key base-dimensions texture-type element-type mipmap-levels layer-count cubes allocated mutable-p samples fixed-sample-locations)

Wrap and existing GL Texture Object in a CEPL ‘texture‘ struct.

This function does not do ANY sanity checking on the values provided, use only if you are 100% sure of what you are setting.

We will now go through the arguments and their behaviours:

**– :dimensions –**

It is required that you provide dimensions when calling this function.

The dimensions can be a single integer (for a 1D texture) or a list of integers (for a multi-dimensional texture).

One differnce between make-texture and make-texture-from-id is that in this function it is valid to pass the symbol ? in place of a dimension when it is unknown. CEPL will not complain but will store 0 in place of the unknown dimension which may cause issues if you try and use any function that expects to be able to get valid size information.

**– :element-type –**

It is required that you provide an element-type when calling this function.

Unlike c-array and gpu-arrays (which use foreign types for their elements) textures have a different set of acceptable element-types. These are called ’image formats’.

NOTES: Unlike ‘make-texture‘, ‘make-texture-from-id‘ does not attempt to convert lisp types or pixel-formats to GLSL image-formats

**– :mipmap-levels –**

This tells CEPL the number of mipmap levels the texture has.

1 is the default.

**– :layer-count –**

If this is set to a value greater than 1 then the texture is one of
the following:

:texture-1d-array
:texture-2d-array
:texture-cube-map-array

Which one is created depends on the dimensions provided and whether cubes is t.

**– :cubes –**

If this is t then you are trying to make a cube-map texture

**– :samples –**

Specify the number of samples in the texture (see the GL wiki for more details on multisample textures)

**– :mutable-p –**

Speicifies if the texture is using mutable storage.

See the docstring for ‘texture‘ for more details.

Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: make-time-elapsed-query ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-timestamp-query ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-transform-feedback-primitives-written-query ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-transform-feedback-stream (&rest buffer-backed-gpu-arrays)
Package

cepl.transform-feedback.

Source

core/transform-feedback/transform-feedback.lisp.

Function: make-ubo (data &optional element-type)

This function will make and return a new ‘ubo‘

You need only provide an element type and the lisp data to populate that type.

For example, given the following type:

(defstruct-g test
(scale :float :accessor scale)
(age :int))

You create a ubo using this type as follows:

(make-ubo ’(1.2 10) ’test)

You can also pass in a c-array or gpu-array and omit the optional type specifier.

If you wish to make a ubo from a specific element of a ‘c-array‘ or ‘gpu-array‘ please see the #’make-ubo-from-array function.

Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Function: make-ubo-from-array (data &optional index element-type)

This function takes a lisp-array, ‘c-array‘ or ‘gpu-array‘ and an index.
It returns a new ‘ubo‘ with the specified element as the data of the ubo.

If made from a c-array or lisp-array, a fresh gpu memory is allocated to hold the data

If made from a gpu-array the ubo simply holds a reference to the gpu-array and the index. No new memory is allocated. This means that if that gpu-array is destroyed then this ubo is in an invalid state.

This also means it is possible to do invalid things when rendering. For example say you used the ubo as an input whilst streaming vertex data from the same array. Consult GL documentation for details on such exceptional cases.

Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Function: make-uninitialized-buffer-stream (primitive)
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Function: make-uninitialized-fbo ()
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Function: make-uninitialized-gpu-array-bb (&optional buffer)
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Function: make-uninitialized-gpu-array-t ()
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Function: make-uninitialized-gpu-buffer ()
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Function: make-uninitialized-render-buffer (&optional multisample)
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Function: make-uninitialized-sampler (texture)
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Function: make-uninitialized-texture (&optional buffer-backed-p)
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Function: make-vao (gpu-arrays &optional index-array)

This function returns a new GL VAO when given

- a list of gpu-arrays
- optionally 1 gpu-array to be used as an index

Package

cepl.vaos.

Source

core/vaos/vaos.lisp.

Function: make-vao-from-id (gl-object gpu-arrays &optional index-array)

This function takes an existing OpenGL VAO and set it up to stream vertices from the given arrays.

Package

cepl.vaos.

Source

core/vaos/vaos.lisp.

Function: make-viewport (&optional resolution origin)

This function returns a new ‘viewport‘ with the specified resolution and origin

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: map-c (function c-array &optional destination-element-type)

When given a function and a ‘c-array‘ this function will map the function across every element of the c-array and write the results of the function into a new c-array with the same element-type and dimensions as the original c-array.

You may also pass in an optional foreign type that will be used as the element type of the new array.

If, rather than making a new c-array, you wish to modify the given c-array you should use ‘map-c-into‘ instead.

Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: map-c-into (destination-c-array function source-c-array)

When given a destination ‘c-array‘, a function and a source c-array this function will map the function across every element of the source c-array and write the results of the function destrucively into the destination c-array.

Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: mapcat (function &rest lists)
Package

cepl-utils.

Source

core/utils.lisp.

Function: mat2-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat2-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat2x2-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat2x2-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat2x3-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat2x3-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat2x4-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat2x4-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat3-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat3-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat3x2-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat3x2-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat3x3-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat3x3-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat3x4-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat3x4-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat4-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat4-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat4x2-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat4x2-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat4x3-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat4x3-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat4x4-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: mat4x4-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: max-lod (sampler)

This function sets the max-lod of the given ‘texture‘ or ‘sampler‘

**– LOD –**

Together with :min-lod this sampling parameter affects the mipmap image selection.

The way these work in mipmap selection is quite complicated; the specification goes into full detail about it.

example:

(setf (min-lod texture-or-sampler) value)
(setf (max-lod texture-or-sampler) value)

Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: (setf max-lod) (sampler)
Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: min-lod (sampler)

This function sets the min-lod of the given ‘texture‘ or ‘sampler‘

**– LOD –**

Together with :max-lod this sampling parameter affects the mipmap image selection.

The way these work in mipmap selection is quite complicated; the specification goes into full detail about it.

example:

(setf (min-lod texture-or-sampler) value)
(setf (max-lod texture-or-sampler) value)

Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: (setf min-lod) (sampler)
Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: minify-filter (sampler)

This function takes a ‘sampler‘ or ‘texture‘ and sets the approach used when the area of the fragment in texture space is larger than a texel.

**– The minification filter –**

The minification filter is controlled by the :texture-min-filter texture parameter. To understand these values better, it is important to discuss what the particular options are. Here is the full list:

:nearest :linear
:nearest-mipmap-nearest :nearest-mipmap-linear
:linear-mipmap-nearest :linear-mipmap-linear

When doing minification, you can choose to use mipmapping or not. Using mipmapping means selecting between multiple mipmaps based on the angle and size of the texture relative to the screen. Whether you use mipmapping or not, you can still select between linear blending of the particular layer or nearest. And if you do use mipmapping, you can choose to either select a single mipmap to sample from, or you can sample the two adjacent mipmaps and linearly blend the resulting values to get the final result.

The OpenGL minification settings for these are as follows:
Param Setting Lin within mip-level
:nearest No
:linear Yes
:nearest-mipmap-nearest No
:linear-mipmap-nearest Yes
:nearest-mipmap-linear No
:linear-mipmap-linear Yes

Param Setting Has mipmapping
:nearest No
:linear No
:nearest-mipmap-nearest Yes
:linear-mipmap-nearest Yes
:nearest-mipmap-linear Yes
:linear-mipmap-linear Yes

Param Setting Linear between mip-levels
:nearest -
:linear -
:nearest-mipmap-nearest No
:linear-mipmap-nearest No
:nearest-mipmap-linear Yes
:linear-mipmap-linear Yes

Remembering these combinations can be annoying so CEPL provides an additional function called #’set-minify-filter see the docstring for details

examples:

(setf (minify-filter tex-or-sampler) :linear)
(setf (minify-filter tex-or-sampler) :nearest-mipmap-nearest) (setf-minify-filter tex-or-sampler :nearest :nearest)

Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: (setf minify-filter) (sampler)
Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: mkstr (&rest args)

Takes a list of strings or symbols and returns one string of them concatenated together. For example: CEPL-EXAMPLES> (cepl-utils:mkstr ’jam ’ham’) ’JAMHAM’
CEPL-EXAMPLES> (cepl-utils:mkstr ’jam’ ’ham’) ’jamham’

Package

cepl-utils.

Source

core/utils.lisp.

Function: mode-alpha (fbo &optional attachment-name)

This function, when passed a ‘blending-params‘ object, will return the name of the equation that will be used to compute the final alpha value from the processed ‘source-alpha‘ and ‘destination-alpha‘.

The result will be one of the following:

:func-add
:func-subtract
:func-reverse-subtract
:min
:max

To see more info on this subject please see the doc-string for the blending-params struct.

Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: (setf mode-alpha) (fbo &optional attachment-name)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: mode-rgb (fbo &optional attachment-name)

This function, when passed a ‘blending-params‘ object, will return the name of the equation that will be used to compute the final color value from the processed ‘source-rgb‘ and ‘destination-rgb‘.

The result will be one of the following:

:func-add
:func-subtract
:func-reverse-subtract
:min
:max

To see more info on this subject please see the doc-string for the blending-params struct.

Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: (setf mode-rgb) (fbo &optional attachment-name)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: multi-buffer-data (buffer c-arrays target usage)

This function takes a list of ‘c-array‘s and uploads all of the data to the ‘gpu-buffer‘.

Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: n-of (thing count)
Package

cepl-utils.

Source

core/utils.lisp.

Function: never (incoming-val stored-val)

Never passes

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.

Function: ni-call (package-name func-name &rest args)

Non-interning funcall

Package

cepl-utils.

Source

core/utils.lisp.

Function: ni-val (package-name symb-name)

Non-interning get value

Package

cepl-utils.

Source

core/utils.lisp.

Function: one (incoming-val stored-val)

Always returns 0

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.

Function: pack-alignment (&optional cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Function: (setf pack-alignment) (&optional force cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Function: parse-body+ (name body &optional extra-decls)
Package

cepl.defn.

Source

defn/defn.lisp.

Function: per-attachment-blending-available-p (&optional cepl-context)

This function will return t if you are on a version of opengl that supports setting blending parameters on framebuffer ‘attachment‘s. Otherwise it returns nil

If the result is nil then you will only be able to change blend params on the first attachment. You can however enable blending on any number of attachments and they will inherit their params from attachment 0

For more details see ‘cepl.blending‘

Package

cepl.fbos.

Source

core/blending/blending.lisp.

Function: pixel-format->image-format (pixel-format &key error-if-missing)

This function, when given a ‘pixel-format‘ object, will attempt to find and return the name of a GL image-format that is equivalent.

If no such type is found then nil is returned

Package

cepl.types.

Source

core/types/pixel-format.lisp.

Function: pixel-format->lisp-type (pixel-format)

This function, when given a ‘pixel-format‘ object, will attempt to find and return the name of a lisp type that is equivalent.

If no such type is found then nil is returned

Package

cepl.types.

Source

core/types/pixel-format.lisp.

Reader: pixel-format-comp-length (instance)

This function when passed a ‘pixel-format‘ will return the number of components it has. The values will be from 1 upto 4

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

comp-length.

Writer: (setf pixel-format-comp-length) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

comp-length.

Reader: pixel-format-components (instance)

This function returns the components of the given ‘pixel-format‘ as a keyword

possible values are:
:r
:rg
:rgb
:rgba
:stencil-only
:depth

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

components.

Writer: (setf pixel-format-components) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

components.

Reader: pixel-format-normalize (instance)

This function returns whether values of the components belonging to the ‘pixel-format‘ are normalized.

If t then sampling the values on the gpu will gives values in the range 0s0 → 1s0

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

normalize.

Writer: (setf pixel-format-normalize) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

normalize.

Function: pixel-format-p (object)

This function returns t if the the given value is a ‘pixel-format‘. Otherwise it returns nil

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: pixel-format-reversed (instance)

Some ‘pixel-format‘s are ’reversed’ meaning the component order in the data is reversed.

This function will return t if the pixel format provided is a reversed-type

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

reversed.

Writer: (setf pixel-format-reversed) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

reversed.

Reader: pixel-format-sizes (instance)

Some ‘pixel-format‘s and image-formats are ’special’ and have specifically sized components.

This function will return a list of sizes in bits of the components.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

sizes.

Writer: (setf pixel-format-sizes) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

sizes.

Reader: pixel-format-type (instance)

This function returns the lisp type of a single ’element’ of the given ‘pixel-format‘.

For example:
- the element type of a :vec3 is a :float.
- the element type of a :vec2 is a :float.
- the element type of a :int8 is a :int8

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

type.

Writer: (setf pixel-format-type) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

type.

Function: ptr-index (c-array x &optional y z w)

This function takes a ‘c-array‘ and some subscripts and will return the ptr to the specified element of the c-array

Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: pull-all-gpu-commands-issued-time ()
Package

cepl.queries.

Source

core/queries/query.lisp.

Function: pull-gpu-query-result (query &optional wait)
Package

cepl.queries.

Source

core/queries/query.lisp.

Function: push-gpu-query-result-to-gpu-array (query destination-gpu-array &optional destination-array-index)
Package

cepl.queries.

Source

core/queries/query.lisp.

Function: query-all-gpu-commands-completed-time (timestamp-query)
Package

cepl.queries.

Source

core/queries/query.lisp.

Function: quit ()

Call this to shutdown CEPL.

As well as its own internal work, CEPL will ask the host to shut itself down.

Package

cepl.

Source

core/repl.lisp.

Function: range (x &optional y z u v)
Package

cepl-utils.

Source

core/utils.lisp.

Function: rangei (x &optional y z u v)
Package

cepl-utils.

Source

core/utils.lisp.

Function: read-fbo-bound (cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: (setf read-fbo-bound) (cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: read-integers (&optional stream eof-error-p eof-value recursive-p)
Package

cepl-utils.

Source

core/utils.lisp.

Function: reallocate-buffer (buffer)

This function takes a buffer and recreates the data-store for it. All data currently in the buffer will be lost.

Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: reallocate-gpu-array (gpu-array)

This function takes a ‘gpu-array‘ and reallocates the buffer that is backing it.

Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Function: register-event-listener (function)

Register a function to be called on every event.
The function must take 1 argument, which will be the event.

Package

cepl.

Source

core/repl.lisp.

Function: register-host (host-class-name)
Package

cepl.host.

Source

host/api-api.lisp.

Function: remove-surface (context surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: render-buffer-dimensions (render-buffer)
Package

cepl.render-buffers.

Source

core/render-buffers/render-buffer.lisp.

Function: render-buffer-image-format (render-buffer)
Package

cepl.render-buffers.

Source

core/render-buffers/render-buffer.lisp.

Function: render-buffer-multisample-p (render-buffer)
Package

cepl.render-buffers.

Source

core/render-buffers/render-buffer.lisp.

Function: render-buffer-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: render-buffer-resolution (render-buffer)
Package

cepl.render-buffers.

Source

core/render-buffers/render-buffer.lisp.

Function: repl (&optional width height gl-version)

This function is a legacy item at this stage, but is still here as it feels nice.

It calls #’initialize-cepl to make a resizable window and prints out a message in the repl.

Package

cepl.

Source

core/repl.lisp.

Function: replace-nth (list n form)
Package

cepl-utils.

Source

core/utils.lisp.

Function: row-major-aref-c (c-array index)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: (setf row-major-aref-c) (c-array index)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: sample (texture &key lod-bias min-lod max-lod minify-filter magnify-filter wrap compare anisotropy)

This function takes a ‘texture‘ and optionally some sampling parameters and returns a ‘sampler‘.

The sampler is an object that is passed to a pipeline so that the shaders in the gpu-functions in the pipeline can read from the gpu-arrays in the texture.

For details on what the parameters are and mean see the docstring for the ’sampler type

**– Note about GL Versions –**

Sampler Objects were introduced in GL 3.3. So for now CEPL needs at least v3.3 in future we hope to lower the requirement to 3.1 but this will take some extra work.

**– NOTE For those with GL experience –**

You will have noticed that in CEPL your sampler is tied to one texture which is unlike in regular GL where a sample object can be used to override the sampling parameters of any number of textures. At first this would seem very wasteful however CEPL does not use 1 GL Sampler Object per CEPL sampler. The ID sharing is done based on the parameters.

This means you get the same number of sampler objects as your would normally but with the added benefit that samplers are semantically dual with buffer-streams giving greater api consistancy.

Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Reader: sampler-id-box-id (instance)
Writer: (setf sampler-id-box-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Reader: sampler-id-box-shared-p (instance)
Writer: (setf sampler-id-box-shared-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

shared-p.

Function: sampler-p (object)

This function returns t if the supplied value is a ‘sampler‘ and nil otherwise

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: sampler-shared-p (sampler)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: sampler-texture (sampler)

This function takes a ‘sampler‘ as its only argument and returns the ‘texture‘ being sampled by the sampler.

Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: sampler-type (sampler)

This function takes a ‘sampler‘ as its only argument and returns the kind of sampler it is.

The result will be one of the kinds listed in cepl.samplers::+sampler-types+

Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: scissor-viewport (&optional index cepl-context)
Package

cepl.scissor.

Source

core/scissor/scissor.lisp.

Function: (setf scissor-viewport) (&optional index cepl-context)
Package

cepl.scissor.

Source

core/scissor/scissor.lisp.

Reader: scoped-gpu-query-active-p (instance)
Writer: (setf scoped-gpu-query-active-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

active-p.

Function: set-default-swap-arg (win-handle)
Package

cepl.host.

Source

host/api-0.lisp.

Function: set-draw-command (c-array index stream &optional instance-count base-instance)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: set-make-gl-context-current-on-surface (func)

Call this and pass the function that will be called when the cepl needs to make the context current

Package

cepl.host.

Source

host/api-common.lisp.

Function: set-minify-filter (sampler for-level &key between-levels)

As the naming of the values for #’minify-filter are quite confusing this function allows you to set the minify filter for the given ‘texture‘ or ‘sampler‘ based on the following:

- for-level: what sampling should be used between texels on the current mipmap level. The value can be :linear or :nearest

- between-level: what sampling should be used between texels on different mipmap levels. The value can be :linear or :nearest
This argument is optional.

Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: set-register-event-callback-func (func)

Call this and pass the function that will be called when the cepl needs to query the window size

Package

cepl.host.

Source

host/api-common.lisp.

Function: set-step-func (func)

Call this and pass the function that will be called every time #’cepl:step-host is called

Package

cepl.host.

Source

host/api-common.lisp.

Function: set-surface-fullscreen (surface state &rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: set-surface-size (surface width height &rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: set-surface-title (surface title &rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: set-swap-func (func)

Call this and pass the function that will be called every time #’cepl:swap is called

Package

cepl.host.

Source

host/api-common.lisp.

Function: set-window-size-func (func)

Call this and pass the function that will be called when the cepl needs to query the window size

Package

cepl.host.

Source

host/api-common.lisp.

Function: short-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: short-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: shutting-down-p ()
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: sn-equal (a b)
Package

cepl-utils.

Source

core/utils.lisp.

Function: source-alpha (fbo &optional attachment-name)

This function, when passed a ‘blending-params‘ object, will return the name of the function that will be applied to the alpha value that is coming from the pipeline and is to be combined with the value already in the ‘fbo‘.

The result will be one of the following:

:zero
:one
:src-color
:one-minus-src-color
:dst-color
:one-minus-dst-color
:src-alpha
:one-minus-src-alpha
:dst-alpha
:one-minus-dst-alpha
:constant-color
:one-minus-constant-color
:constant-alpha
:one-minus-constant-alpha
:src-alpha-saturate
:src1-color
:one-minus-src-color
:src1-alpha
:one-minus-src-alpha

To see more info on this subject please see the doc-string for the blending-params struct.

Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: (setf source-alpha) (fbo &optional attachment-name)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: source-rgb (fbo &optional attachment-name)

This function, when passed a ‘blending-params‘ object, will return the name of the function that will be applied to the color value that is coming from the pipeline and is to be combined with the value already in the ‘fbo‘.

The result will be one of the following:

:zero
:one
:src-color
:one-minus-src-color
:dst-color
:one-minus-dst-color
:src-alpha
:one-minus-src-alpha
:dst-alpha
:one-minus-dst-alpha
:constant-color
:one-minus-constant-color
:constant-alpha
:one-minus-constant-alpha
:src-alpha-saturate
:src1-color
:one-minus-src-color
:src1-alpha
:one-minus-src-alpha

To see more info on this subject please see the doc-string for the blending-params struct.

Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: (setf source-rgb) (fbo &optional attachment-name)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: split-float-version (float)
Package

cepl.context.

Source

core/context/version.lisp.

Function: split-seq-by-seq (delim sequence)
Package

cepl-utils.

Source

core/utils.lisp.

Function: split-string (delimiter string)
Package

cepl-utils.

Source

core/utils.lisp.

Reader: ssbo-data (instance)

Returns the ‘gpu-array‘ that contains the data presented by this ‘SSBO‘

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

data.

Writer: (setf ssbo-data) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

data.

Function: ssbo-data-type (ssbo)

This function returns the type of the data that is contained in the ‘SSBO‘

Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Reader: ssbo-id (instance)

This function return the id of the GL SSBO abstracted by this CEPL ‘SSBO‘.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Writer: (setf ssbo-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Reader: ssbo-index (instance)

This function returns the index into the ssbo-data where the element defined by this ‘ssbo‘ is located

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

index.

Writer: (setf ssbo-index) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

index.

Reader: ssbo-owns-gpu-array (instance)

This function returns t if the ‘gpu-array‘ was created by ‘make-ssbo‘ or nil if it is using data from a gpu-array passed to make-ssbo

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

owns-gpu-array.

Writer: (setf ssbo-owns-gpu-array) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

owns-gpu-array.

Function: ssbo-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: stencil-decf (incoming-val stored-val)

Decrement the stored value clamping to 0

We only show the implementation for 8bit stencil here due to strong recommendations from guides to use 8bit stencils. Not an issue as this is only a stand-in function anyway

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.

Function: stencil-decf-wrap (incoming-val stored-val)

Decrement the stored value wrapping if underflows

We only show the implementation for 8bit stencil here due to strong recommendations from guides to use 8bit stencils. Not an issue as this is only a stand-in function anyway

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.

Function: stencil-formatp (format)

This function returns t if the value provided is a keyword that can be found in *stencil-formats*

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Function: stencil-incf (incoming-val stored-val)

Increment the stored value clamping to maximum

We only show the implementation for 8bit stencil here due to strong recommendations from guides to use 8bit stencils. Not an issue as this is only a stand-in function anyway

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.

Function: stencil-incf-wrap (incoming-val stored-val)

Increment the stored value wrapping if it overflows

We only show the implementation for 8bit stencil here due to strong recommendations from guides to use 8bit stencils. Not an issue as this is only a stand-in function anyway

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.

Function: stencil-invert (incoming-val stored-val)

Invert the stored value

We only show the implementation for 8bit stencil here due to strong recommendations from guides to use 8bit stencils. Not an issue as this function only exists as documentation anyway

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.

Function: stencil-mask (face &optional cepl-context)
Package

%cepl.types.

Source

core/stencil/mask.lisp.

Function: (setf stencil-mask) (face &optional cepl-context)
Package

%cepl.types.

Source

core/stencil/mask.lisp.

Function: stencil-params-mask (params)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-params-on-dpfail (params)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-params-on-dppass (params)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-params-on-sfail (params)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-params-on-stencil-pass-depth-test-fail (params)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-params-on-stencil-pass-depth-test-pass (params)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-params-on-stencil-test-fail (params)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-params-test (params)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-params-value (params)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-replace (incoming-val stored-val)

Invert the stored value

We only show the implementation for 8bit stencil here due to strong recommendations from guides to use 8bit stencils. Not an issue as this function only exists as documentation anyway

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.

Function: step-host (&optional context)

Call this to ask the host update its own internals.

This description is a bit nebulous as cepl doesnt impose what the host should do when this call is made; however it is usual to call #’step-host every tick of a main-loop and so often hosts will use this to do per-tick jobs like polling for input events.

Package

cepl.

Source

core/repl.lisp.

Function: stop-listening-to-lifecycle-changes (func)
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: sub-at-index (seq index new-val)
Package

cepl-utils.

Source

core/utils.lisp.

Function: subseq-c (array start &optional end)

This function returns a ‘c-array‘ which contains a subset of the array passed into this function.

It does not copy the foreign data, instead this array points to within the data of the original array. This means these arrays now share data (like a displaced array in standard CL.

Due to this you have to be very careful when freeing the underlying array as this will affect any other array sharing that data.

If you want a copy of a subseq of a c-array then use something like:

(clone-c-array (subseq-c arr 3 10))

The reason that this arguably more dangerous behaviour is default is efficiency. CEPL tries not to allocate new memory when the function is not explicitly about that.

Package

cepl.c-arrays.

Source

core/c-arrays/rest.lisp.

Function: subseq-g (array start &optional end)

This function returns a ‘gpu-array‘ which contains a subset of the gpu-array passed into this function.

It does not copy the foreign data, instead this array points to within the data of the original array. This means these arrays now share data (like a displaced array in standard CL.

Due to this you have to be very careful when freeing the underlying array as this will affect any other array sharing that data.

The reason that this arguably more dangerous behaviour is default is efficiency. Mofidying gpu memory in performance critical applications should be done at specific times so as not to get blocked by rendering commands. As such CEPL tries not to allocate new memory when the function is not explicitly about that.

Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: subseq-g-raw (array start end &key new-element-type)

This function returns a ‘gpu-array‘ which contains a subset of the gpu-array passed into this function optionally allowing you to change the element-type of the resulting gpu-array.

It does not copy the foreign data, instead this array points to within the data of the original array. This means these arrays now share data (like a displaced array in standard CL.

Due to this you have to be very careful when freeing the underlying array as this will affect any other array sharing that data.

Also you have to be careful that the new element-type you choose makes sense given the data already in the arrays. For example taking an gpu-array of :vec4 and making an gpu-array of :float will give you sensible values, however making a gpu-array of :int will give you garbage.

Unless you have a very specific use-case then it is best to use ‘subseq-g‘

The reason that this arguably more dangerous behaviour is default is efficiency. Mofidying gpu memory in performance critical applications should be done at specific times so as not to get blocked by rendering commands. As such CEPL tries not to allocate new memory when the function is not explicitly about that.

Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: supports-multiple-contexts-p (&rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: supports-multiple-surfaces-p (&rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: surface-dimensions (surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: (setf surface-dimensions) (surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: surface-fullscreen-p (surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: (setf surface-fullscreen-p) (surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: surface-fullscreen-p (surface &rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: surface-resolution (surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: (setf surface-resolution) (surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: surface-title (surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: (setf surface-title) (surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: surface-title (surface &rest args &key &allow-other-keys)
Package

cepl.host.

Source

host/api-common.lisp.

Function: surfaces (&optional cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: swap (&optional context)

Call this ask the host to swap the buffers of the default framebuffer.

We usually do this when we have finished drawing a given frame.

Package

cepl.

Source

core/repl.lisp.

Function: symb (&rest args)

This takes a list of symbols (or strings) and outputs one symbol.
If the input is symbol/s then the output is a regular symbol If the input is string/s, then the output is
a |symbol like this|

Package

cepl-utils.

Source

core/utils.lisp.

Function: symb-name= (a b)
Package

cepl-utils.

Source

core/utils.lisp.

Function: symb-package (package &rest args)
Package

cepl-utils.

Source

core/utils.lisp.

Function: symbol-name-equal (a b)
Package

cepl-utils.

Source

core/utils.lisp.

Function: texref (texture &key mipmap-level layer cube-face)

This function allows you to access a specific ‘gpu-array‘ from the ‘texture‘.

:mipmap-level is invalid if the texture doesnt have mipmaps

:layer is invalid if the texture-type is not a 1d,2d or cube-map array-texture.

:cube-face is invalid if the texture is not a cube-map texture

Package

cepl.textures.

Source

core/textures/textures.lisp.

Reader: texture-allocated-p (instance)
Writer: (setf texture-allocated-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

allocated-p.

Reader: texture-base-dimensions (instance)

Returns the resolution of the ‘gpu-array‘ at the ’base-level’ of the mipmap chain. The base level is the largest one.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

base-dimensions.

Writer: (setf texture-base-dimensions) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

base-dimensions.

Reader: texture-cache-id (instance)
Writer: (setf texture-cache-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cache-id.

Reader: texture-cubes-p (instance)

This function returns t if the ‘texture‘ is a cube texture and nil otherwise

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cubes-p.

Writer: (setf texture-cubes-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cubes-p.

Function: texture-element-type (texture)

This function returns the element-type of the given ‘texture‘.

If the texture is a ‘buffer-texture‘ then the element-type will be a foreign lisp type.

Otherwise it will be one of the image-formats

**– Element Types Details –**

Unlike ‘c-array‘ and ‘gpu-array‘s (which use foreign types for their elements) textures have a different set of acceptable format. These are called
’image formats’.

The name may imply that these formats are only usable for image data but this is not the case. Most of the types we are used to are there, but under unsual names.

This would make this a ripe candidate for CEPL to clean up the naming.. but it doesnt, why?

Well the answer to that is image-formats are damn confusing and if we change too much of the naming it will be even more confusing when trying to google information. Instead CEPL provides a number of functions for converting between (foreign) lisp types and their image-format counterparts.

Package

cepl.textures.

Source

core/textures/def.lisp.

Reader: texture-fixed-sample-locations-p (instance)
Writer: (setf texture-fixed-sample-locations-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

fixed-sample-locations-p.

Reader: texture-id (instance)

This function returns the id of the GL Texture Object from the CEPL ‘texture‘.

Don’t use this unless you know what you are doing on the GL side.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Writer: (setf texture-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Reader: texture-image-format (instance)
Writer: (setf texture-image-format) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

image-format.

Reader: texture-last-sampler-id (instance)
Writer: (setf texture-last-sampler-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

last-sampler-id.

Reader: texture-layer-count (instance)

When called with a ‘texture‘ with one of the following texture-types: :texture-1d-array
:texture-2d-array
:texture-cube-map-array

then this function returns the number of ’layers’ in the texture.

For all other texture types this will return 0

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

layer-count.

Writer: (setf texture-layer-count) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

layer-count.

Reader: texture-mipmap-levels (instance)

When called with a ‘texture‘ with mipmaps enabled this function returns the number of ’mipmap levels’ in the texture.

For all other texture types this will return 0

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

mipmap-levels.

Writer: (setf texture-mipmap-levels) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

mipmap-levels.

Reader: texture-mutable-p (instance)

When called with a ‘texture‘ this function returns t if the texture was made with mutable texture storage and nil otherwise.

Using immutable texture storage does not mean that the data inside the texture’s ‘gpu-array‘s cannot be mutated.

Mutable texture storage allows you to redefine the ’nature’ of the data stored in the gpu-arrays after they are created, by that we mean things like the type of the data, the resolution of the gpu-arrays.

As it is hard to change such things without creating an ’incomplete’ texture[0] CEPL opts to treat all textures as immutable textures.
When the OpenGL version doesnt support immutable texture storage CEPL makes uses immutable storage, allocates all the memory at construction, and doesnt provide abstractions over the opengl features that would modify the storage.

[0] - https://www.opengl.org/wiki/Immutable_Storage_Texture#Texture_completeness

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

mutable-p.

Writer: (setf texture-mutable-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

mutable-p.

Function: texture-p (object)

This function returns t if the given value is a ‘texture‘, otherwise nil is returned.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: texture-samples (instance)
Writer: (setf texture-samples) (instance)
Package

glsl-symbols.functions.

Source

core/types/cepl-types.lisp.

Target Slot

samples.

Reader: texture-type (instance)

This function will return the type of the given ‘texture‘.

The possible values are:

:texture-1d
:texture-2d
:texture-3d
:texture-rectangle
:texture-buffer
:texture-cube-map
:texture-1d-array
:texture-2d-array
:texture-cube-map-array :texture-2d-multisample :texture-2d-multisample-array

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

type.

Writer: (setf texture-type) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

type.

Function: transform-feedback-stream-arrays (tfs)
Package

cepl.transform-feedback.

Source

core/transform-feedback/transform-feedback.lisp.

Function: (setf transform-feedback-stream-arrays) (tfs)
Package

cepl.transform-feedback.

Source

core/transform-feedback/transform-feedback.lisp.

Reader: ubo-data (instance)

Returns the ‘gpu-array‘ that contains the data presented by this ‘UBO‘

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

data.

Writer: (setf ubo-data) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

data.

Function: ubo-data-type (ubo)

This function returns the type of the data that is contained in the ‘UBO‘

Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Reader: ubo-id (instance)

This function return the id of the GL UBO abstracted by this CEPL ‘UBO‘.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Writer: (setf ubo-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

id.

Reader: ubo-index (instance)

This function returns the index into the ubo-data where the element defined by this ‘ubo‘ is located

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

index.

Writer: (setf ubo-index) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

index.

Reader: ubo-owns-gpu-array (instance)

This function returns t if the ‘gpu-array‘ was created by ‘make-ubo‘ or nil if it is using data from a gpu-array passed to make-ubo

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

owns-gpu-array.

Writer: (setf ubo-owns-gpu-array) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

owns-gpu-array.

Function: ubo-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: uint-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint32-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint32-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint8-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint8-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint8-vec2-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint8-vec2-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint8-vec3-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint8-vec3-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint8-vec4-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uint8-vec4-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uninitialized-p ()
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: unknown-gl-id-p (id)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: unpack-alignment (&optional cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Function: (setf unpack-alignment) (&optional force cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Function: ushort-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: ushort-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uvec2-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uvec2-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uvec3-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uvec3-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uvec4-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: uvec4-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: valid-image-format-for-buffer-backed-texturep (format)

This function returns t if the value provided is a keyword that can be found in *valid-image-formats-for-buffer-backed-texture*

Package

cepl.image-formats.

Source

core/types/image-format.lisp.

Function: vao-bound (cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: (setf vao-bound) (cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: vec2-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: vec2-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: vec3-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: vec3-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: vec4-from-foreign (ptr)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: vec4-to-foreign (ptr value)
Package

cepl.types.foreign.

Source

core/types/cffi-helpers.lisp.

Function: viewport-dimensions (viewport)

This function returns the resolution of the ‘viewport‘ as a list of integers

If you call the generic function ‘dimensions‘ with a viewport you will get this value.

If you need this value as a vec2 use ‘viewport-resolution‘ or just the generic function ‘resolution‘

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: (setf viewport-dimensions) (viewport)
Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: viewport-eql (v0 v1)

This function returns t if the two viewports have the same resolution and origin.

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: viewport-origin (viewport)

This function returns the origin of the ‘viewport‘.

This is the top-left corner of the rectangle within the surface that OpenGL (and thus CEPL) will draw into

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: (setf viewport-origin) (viewport)
Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: viewport-origin-i (viewport)
Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: (setf viewport-origin-i) (viewport)
Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: viewport-origin-x (viewport)

This function returns the x component of the resolution of the ‘viewport‘ as a float.

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: viewport-origin-y (viewport)

This function returns the y component of the resolution of the ‘viewport‘ as a float.

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: viewport-p (object)

This function will return t if the value given is a ‘viewport‘, otherwise it will return nil

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: viewport-params-to-vec4 (&optional viewport)

Will return a vec4 packed with the origin and resolution. The format is as follows:

(v! origin-x origin-y resolution-x resolution-y)

If now viewport is provided the the ‘current-viewport‘ is used.

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: viewport-resolution (viewport)

This function returns the resolution of the ‘viewport‘ as a vec2

If you call the generic function ‘resolution‘ with a viewport you will get this value.

If you need this value as a list use ‘viewport-dimensions‘ or just the generic function ‘dimensions‘

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: (setf viewport-resolution) (viewport)
Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: viewport-resolution-x (viewport)

This function returns the x component of the resolution of the ‘viewport‘ as a float.

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: viewport-resolution-y (viewport)

This function returns the y component of the resolution of the ‘viewport‘ as a float.

Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: wait-on-gpu-fence (fence &optional timeout flush)
Package

cepl.sync.

Source

core/sync/sync.lisp.

Function: walk-replace (to-replace replace-with form &key test)

This walks a list tree (’form’) replacing all occurences of ’to-replace’ with ’replace-with’. This is pretty inefficent but will be fine for macros.

Package

cepl-utils.

Source

core/utils.lisp.

Function: window-dimensions (window)
Package

cepl.internals.

Source

core/internals.lisp.

Function: window-resolution (window)
Package

cepl.internals.

Source

core/internals.lisp.

Function: window-size (win)

When given the host-specific window handle will return the size of the window

Package

cepl.host.

Source

host/api-common.lisp.

Function: wrap (sampler)

This function sets the wrap parameter of the ‘texture‘ or ‘sampler‘ given.

When setf’ing this parameter you can provide either one approach to be used for all 3 potential dimensions of the texture, or you can provide a vector of the 3 approaches you want to used.

**– Wrapping –**

When using normalized texture coordinates we are used to thinking about our coordinate being between 0s0 and 1s0 and that value dictating where we are sampling from.

However normalized texture coordinates are not limited to values between
0s0 and 1s0. They can be any floating-point number.

When a texture coordinate is not within the 0 → 1 range, some means must be employed to decide what the color value will be.

The different approaches are as follows:

:repeat: the texture coordinate wraps around the texture. so a texture coordinate of -0.2 becomes the equivalent of 0.8.

:mirrored-repeat: the texture coordinate wraps around like a mirror. -0.2 becomes 0.2, -1.2 becomes 0.8, etc.

:clamp-to-edge: the texture coordinate is clamped to the 0 → 1 range.

:clamp-to-border: the texture coordinate is clamped to the 0 → 1
range, but the edge texels are blended with a
constant border color.

:mirror-clamp-to-edge: (only available with OpenGL 4.4 or :arb-texture-mirror-clamp-to-edge) the texture
is clamped to the -1 → 1 range, but mirrors the negative direction with the positive. Basically, it acts as :clamp-to-edge, except that it
takes the absolute value of the texture coordinates before clamping.

This also applies to Rectangle Textures, except that the range at which they apply edge sampling is based on the texel width/height of the texture, not the normalized 0 → 1 range.

This does not apply to Buffer Textures, as they must use the texelFetch sampling functions and thus cannot sample outside of the texel range of the texture.

example:

(setf (wrap texture-or-sampler)
#(:clamp-to-edge :repeat-to-edge :clamp-to-edge))

(setf (wrap texture-or-sampler) :clamp-to-edge)

Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: (setf wrap) (sampler)
Package

%cepl.types.

Source

core/samplers/samplers.lisp.

Function: zero (incoming-val stored-val)

Always returns 0

Package

cepl.documentation-functions.

Source

core/context/documentation-functions.lisp.


5.1.6 Generic functions

Generic Function: bi-tangent (object)

This function, returns a :vec3 which is the bi-tangent of the instance.

You can alternatively use the generic function #’bi-tangent to get this value.

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: bi-tangent ((wrapped-object g-pntcb))
Method: bi-tangent ((wrapped-object g-pntb))
Method: bi-tangent ((wrapped-object g-pncb))
Method: bi-tangent ((wrapped-object g-pnb))
Generic Function: (setf bi-tangent) (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: (setf bi-tangent) ((wrapped-object g-pntcb))
Method: (setf bi-tangent) ((wrapped-object g-pntb))
Method: (setf bi-tangent) ((wrapped-object g-pncb))
Method: (setf bi-tangent) ((wrapped-object g-pnb))
Generic Function: can-be-shared-between-contexts-p (object)

This function returns t if the object you pass it can be safely used from two shared contexts. As this function cannot detect which contexts you are refering to you must ensure yourself that the contexts are shared.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Methods
Method: can-be-shared-between-contexts-p ((object gpu-buffer))
Method: can-be-shared-between-contexts-p ((object gpu-array))
Method: can-be-shared-between-contexts-p ((object sampler))
Method: can-be-shared-between-contexts-p ((object texture))
Method: can-be-shared-between-contexts-p ((object fbo))
Method: can-be-shared-between-contexts-p ((object transform-feedback-stream))
Method: can-be-shared-between-contexts-p ((object buffer-stream))
Generic Function: clear-gl-context-cache (object)
Package

cepl.internals.

Source

core/internals.lisp.

Generic Function: col (object)

This function, returns a :vec4 which is the color of the instance.

You can alternatively use the generic function #’col to get this value.

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: col ((wrapped-object g-pntcb))
Method: col ((wrapped-object g-pncb))
Method: col ((wrapped-object g-pntc))
Method: col ((wrapped-object g-pnc))
Method: col ((wrapped-object g-pc))
Generic Function: (setf col) (obj)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: (setf col) ((wrapped-object g-pntcb))
Method: (setf col) ((wrapped-object g-pncb))
Method: (setf col) ((wrapped-object g-pntc))
Method: (setf col) ((wrapped-object g-pnc))
Method: (setf col) ((wrapped-object g-pc))
Generic Function: copy-g (source destination)
Package

cepl.memory.

Source

core/memory/memory.lisp.

Methods
Method: copy-g ((object ssbo) (destination (eql :lisp)))
Source

core/ssbos/ssbos.lisp.

Method: copy-g ((source array) (destination ssbo))
Source

core/ssbos/ssbos.lisp.

Method: copy-g ((source list) (destination ssbo))
Source

core/ssbos/ssbos.lisp.

Method: copy-g ((source c-array) (destination ssbo))
Source

core/ssbos/ssbos.lisp.

Method: copy-g ((object ubo) (destination (eql :lisp)))
Source

core/ubos/ubo.lisp.

Method: copy-g ((source array) (destination ubo))
Source

core/ubos/ubo.lisp.

Method: copy-g ((source list) (destination ubo))
Source

core/ubos/ubo.lisp.

Method: copy-g ((source c-array) (destination ubo))
Source

core/ubos/ubo.lisp.

Method: copy-g ((source gpu-array-bb) (destination (eql :lisp)))
Source

core/gpu-arrays/with-and-push.lisp.

Method: copy-g ((source gpu-array-bb) (destination (eql :c-array)))
Source

core/gpu-arrays/with-and-push.lisp.

Method: copy-g ((source c-array) (destination gpu-array-bb))
Source

core/gpu-arrays/with-and-push.lisp.

Method: copy-g ((source array) (destination gpu-array-bb))
Source

core/gpu-arrays/with-and-push.lisp.

Method: copy-g ((source list) (destination gpu-array-bb))
Source

core/gpu-arrays/with-and-push.lisp.

Method: copy-g ((source gpu-array-t) (destination gpu-array-bb))
Source

core/textures/textures.lisp.

Method: copy-g ((source gpu-array-bb) (destination gpu-array-t))
Source

core/textures/textures.lisp.

Method: copy-g ((source gpu-array-t) (destination (eql :gpu-array-bb)))
Source

core/textures/textures.lisp.

Method: copy-g ((source gpu-array-t) (destination (eql :lisp)))
Source

core/textures/textures.lisp.

Method: copy-g ((source gpu-array-t) (destination (eql :c-array)))
Source

core/textures/textures.lisp.

Method: copy-g ((source gpu-array-t) (destination c-array))
Source

core/textures/textures.lisp.

Method: copy-g ((source array) (destination gpu-array-t))
Source

core/textures/textures.lisp.

Method: copy-g ((source list) (destination gpu-array-t))
Source

core/textures/textures.lisp.

Method: copy-g ((source c-array) (destination gpu-array-t))
Source

core/textures/textures.lisp.

Method: copy-g ((source c-array) (destination (eql :lisp)))
Source

core/c-arrays/rest.lisp.

Method: copy-g ((source array) (destination c-array))
Source

core/c-arrays/rest.lisp.

Method: copy-g ((source list) (destination c-array))
Source

core/c-arrays/rest.lisp.

Generic Function: delete-gpu-function (gfunc-description &optional error-if-missing)

This function will delete a gpu-function this will mean it can no longer be used in new pipelines.

This function will only delete one function at a time, so if your gpu-function is overloaded then you will want to specify the function signature exactly.

See the documentation for ‘gpu-functions‘ which will lists all the signatures for the gpu-functions with a given name.

Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: delete-gpu-function ((gfunc-description list) &optional error-if-missing)
Source

core/pipelines/gpu-functions.lisp.

Method: delete-gpu-function ((gfunc-description func-key) &optional error-if-missing)
Source

core/pipelines/gpu-functions.lisp.

Method: delete-gpu-function ((gfunc-description symbol) &optional error-if-missing)
Source

core/pipelines/gpu-functions.lisp.

Method: delete-gpu-function ((gfunc-description null) &optional error-if-missing)
Source

core/pipelines/gpu-functions.lisp.

Generic Function: dimensions (object)

Returns the list containing the dimensions of the given value

Package

cepl.measurements.

Source

core/measurements/measurements.lisp.

Methods
Method: dimensions ((space compute-space))
Source

core/compute/compute.lisp.

Method: dimensions ((texture texture))
Source

core/textures/textures.lisp.

Method: dimensions ((object gpu-array))
Source

core/gpu-arrays/buffer-backed.lisp.

Method: dimensions ((array c-array))
Source

core/c-arrays/def.lisp.

Method: dimensions ((viewport viewport))
Source

core/viewports/viewport.lisp.

Method: dimensions (object)
Generic Function: (setf dimensions) (object)
Package

cepl.measurements.

Source

core/measurements/measurements.lisp.

Methods
Method: (setf dimensions) ((space compute-space))
Source

core/compute/compute.lisp.

Method: (setf dimensions) ((viewport viewport))
Source

core/viewports/viewport.lisp.

Generic Function: element-byte-size (array)

Returns the size in bytes taken up by a single element of the ‘c-array‘.

Package

cepl.types.

Source

core/types/types.lisp.

Methods
Method: element-byte-size ((array c-array))
Source

core/c-arrays/def.lisp.

Generic Function: element-type (array)

Returns the type of the elements in the ‘c-array‘.

Package

cepl.types.

Source

core/types/types.lisp.

Methods
Method: element-type ((gpu-array gpu-array-t))
Source

core/textures/def.lisp.

Method: element-type ((texture texture))
Source

core/textures/def.lisp.

Method: element-type ((object gpu-array-bb))
Source

core/gpu-arrays/buffer-backed.lisp.

Method: element-type ((array c-array))
Source

core/c-arrays/def.lisp.

Generic Function: free (object)

The function takes a CEPL object of any one of the following types.

- ‘c-array‘
- ‘gpu-buffer‘
- ‘gpu-array‘ (texture backed or buffer backed)
- ‘buffer-stream‘
- ‘texture‘
- ‘ubo‘
- ‘fbo‘

And deletes the internal GL object, frees any associated memory and blanks the CEPL object.

’Blanking’, in this case, means the fields of the object will be set to some default.

Package

cepl.memory.

Source

core/memory/memory.lisp.

Methods
Method: free ((obj gpu-fence))
Source

core/sync/sync.lisp.

Method: free ((object ssbo))
Source

core/ssbos/ssbos.lisp.

Method: free ((object ubo))
Source

core/ubos/ubo.lisp.

Method: free ((fbo fbo))
Source

core/fbos/fbo.lisp.

Method: free ((sampler sampler))
Source

core/samplers/samplers.lisp.

Method: free ((object gpu-array-t))
Source

core/textures/def.lisp.

Method: free ((object texture))
Source

core/textures/def.lisp.

Method: free ((pipeline-func function))
Source

core/pipelines/defpipeline.lisp.

Method: free ((pipeline-name symbol))
Source

core/pipelines/defpipeline.lisp.

Method: free ((object buffer-stream))
Source

core/streams/buffer-streams.lisp.

Method: free ((object gpu-array))
Source

core/gpu-arrays/buffer-backed.lisp.

Method: free ((object gpu-buffer))
Source

core/gpu-buffers/gpu-buffers.lisp.

Method: free ((wrapper base-gstruct-wrapper))
Source

core/types/structs.lisp.

Method: free ((object c-array))
Source

core/c-arrays/def.lisp.

Method: free ((object null))
Generic Function: free-gpu-array (gpu-array)

When given a buffer-backed ‘gpu-array‘ this will do one of three things:

If the gpu-array is the only gpu-array in the ‘gpu-buffer‘ then the gpu-buffer is freed and the gpu-array is blanked.

If the gpu-array shares a gpu-buffer with other gpu-arrays and they are still live then blank this gpu-array.

If the gpu-array shared a gpu-buffer with other gpu-buffer but they have all been freed then free the gpu-buffer and blank the gpu-array.

Blanking the gpu-array means its fields will be set to default values,
for example dimensions will be nil, the ‘texture‘ will be null etc.

The generic function ‘free‘ will call #’free-gpu-array when passed a gpu-array.

Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Methods
Method: free-gpu-array ((gpu-array gpu-array-t))
Source

core/textures/def.lisp.

Method: free-gpu-array ((gpu-array gpu-array))
Generic Function: free-texture (texture)

This function will free the ‘texture‘ and all texture-memory behind the texture’s ‘gpu-array‘s.

Be sure not to use those arrays after this function has been called.

Package

cepl.textures.

Source

core/textures/def.lisp.

Methods
Method: free-texture ((texture buffer-texture))
Method: free-texture ((texture texture))
Generic Function: get-typed-from-foreign (type-name)

This function, when given a foreign type name returns a function that when given a pointer reads the named type foreign from the pointer.

For example

(get-typed-from-foreign :vec3)

returns a function that when given a pointer to a :vec3 will return a lisp vec3.

Package

cepl.types.

Source

core/types/cffi-helpers.lisp.

Methods
Method: get-typed-from-foreign ((type-name (eql cepl.types.predefined:g-pntcb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.types.predefined:g-pntb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.types.predefined:g-pncb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.types.predefined:g-pnb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.types.predefined:g-pntc)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.types.predefined:g-pnt)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.types.predefined:g-pnc)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.types.predefined:g-pt)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.types.predefined:g-pc)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.types.predefined:g-pn)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.pipelines:elements-indirect-command)))
Source

core/pipelines/multi-draw.lisp.

Method: get-typed-from-foreign ((type-name (eql cepl.pipelines:arrays-indirect-command)))
Source

core/pipelines/multi-draw.lisp.

Method: get-typed-from-foreign ((type-name (eql :unsigned-short)))
Method: get-typed-from-foreign ((type-name (eql :unsigned-byte)))
Method: get-typed-from-foreign ((type-name (eql :unsigned-int)))
Method: get-typed-from-foreign ((type-name (eql :int8-vec4)))
Method: get-typed-from-foreign ((type-name (eql :int8-vec3)))
Method: get-typed-from-foreign ((type-name (eql :int8-vec2)))
Method: get-typed-from-foreign ((type-name (eql :uint8-vec4)))
Method: get-typed-from-foreign ((type-name (eql :uint8-vec3)))
Method: get-typed-from-foreign ((type-name (eql :uint8-vec2)))
Method: get-typed-from-foreign ((type-name (eql :mat4x4)))
Method: get-typed-from-foreign ((type-name (eql :mat4x3)))
Method: get-typed-from-foreign ((type-name (eql :mat4x2)))
Method: get-typed-from-foreign ((type-name (eql :mat3x4)))
Method: get-typed-from-foreign ((type-name (eql :mat3x3)))
Method: get-typed-from-foreign ((type-name (eql :mat3x2)))
Method: get-typed-from-foreign ((type-name (eql :mat2x4)))
Method: get-typed-from-foreign ((type-name (eql :mat2x3)))
Method: get-typed-from-foreign ((type-name (eql :mat2x2)))
Method: get-typed-from-foreign ((type-name (eql :mat4)))
Method: get-typed-from-foreign ((type-name (eql :mat3)))
Method: get-typed-from-foreign ((type-name (eql :mat2)))
Method: get-typed-from-foreign ((type-name (eql :uvec4)))
Method: get-typed-from-foreign ((type-name (eql :uvec3)))
Method: get-typed-from-foreign ((type-name (eql :uvec2)))
Method: get-typed-from-foreign ((type-name (eql :ivec4)))
Method: get-typed-from-foreign ((type-name (eql :ivec3)))
Method: get-typed-from-foreign ((type-name (eql :ivec2)))
Method: get-typed-from-foreign ((type-name (eql :half-vec4)))
Method: get-typed-from-foreign ((type-name (eql :half-vec3)))
Method: get-typed-from-foreign ((type-name (eql :half-vec2)))
Method: get-typed-from-foreign ((type-name (eql :vec4)))
Method: get-typed-from-foreign ((type-name (eql :vec3)))
Method: get-typed-from-foreign ((type-name (eql :vec2)))
Method: get-typed-from-foreign ((type-name (eql :half-float)))
Method: get-typed-from-foreign ((type-name (eql :double)))
Method: get-typed-from-foreign ((type-name (eql :float)))
Method: get-typed-from-foreign ((type-name (eql :uint32)))
Method: get-typed-from-foreign ((type-name (eql :int32)))
Method: get-typed-from-foreign ((type-name (eql :uint)))
Method: get-typed-from-foreign ((type-name (eql :int)))
Method: get-typed-from-foreign ((type-name (eql :ushort)))
Method: get-typed-from-foreign ((type-name (eql :short)))
Method: get-typed-from-foreign ((type-name (eql :uint8)))
Method: get-typed-from-foreign ((type-name (eql :int8)))
Method: get-typed-from-foreign (type-name)
Generic Function: get-typed-to-foreign (type-name)

This function, when given a foreign type name returns a function that when given a pointer and a lisp value, converts and writes the value to the foreign location specified by the pointer pointer.

For example:

(get-typed-to-foreign :vec3)

returns a function that when given a pointer and a lisp vec3 will write the value into foreign memory.

Package

cepl.types.

Source

core/types/cffi-helpers.lisp.

Methods
Method: get-typed-to-foreign ((type-name (eql cepl.types.predefined:g-pntcb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.types.predefined:g-pntb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.types.predefined:g-pncb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.types.predefined:g-pnb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.types.predefined:g-pntc)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.types.predefined:g-pnt)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.types.predefined:g-pnc)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.types.predefined:g-pt)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.types.predefined:g-pc)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.types.predefined:g-pn)))
Source

core/types/predefined/gpu-structs.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.pipelines:elements-indirect-command)))
Source

core/pipelines/multi-draw.lisp.

Method: get-typed-to-foreign ((type-name (eql cepl.pipelines:arrays-indirect-command)))
Source

core/pipelines/multi-draw.lisp.

Method: get-typed-to-foreign ((type-name (eql :unsigned-short)))
Method: get-typed-to-foreign ((type-name (eql :unsigned-byte)))
Method: get-typed-to-foreign ((type-name (eql :unsigned-int)))
Method: get-typed-to-foreign ((type-name (eql :int8-vec4)))
Method: get-typed-to-foreign ((type-name (eql :int8-vec3)))
Method: get-typed-to-foreign ((type-name (eql :int8-vec2)))
Method: get-typed-to-foreign ((type-name (eql :uint8-vec4)))
Method: get-typed-to-foreign ((type-name (eql :uint8-vec3)))
Method: get-typed-to-foreign ((type-name (eql :uint8-vec2)))
Method: get-typed-to-foreign ((type-name (eql :mat4x4)))
Method: get-typed-to-foreign ((type-name (eql :mat4x3)))
Method: get-typed-to-foreign ((type-name (eql :mat4x2)))
Method: get-typed-to-foreign ((type-name (eql :mat3x4)))
Method: get-typed-to-foreign ((type-name (eql :mat3x3)))
Method: get-typed-to-foreign ((type-name (eql :mat3x2)))
Method: get-typed-to-foreign ((type-name (eql :mat2x4)))
Method: get-typed-to-foreign ((type-name (eql :mat2x3)))
Method: get-typed-to-foreign ((type-name (eql :mat2x2)))
Method: get-typed-to-foreign ((type-name (eql :mat4)))
Method: get-typed-to-foreign ((type-name (eql :mat3)))
Method: get-typed-to-foreign ((type-name (eql :mat2)))
Method: get-typed-to-foreign ((type-name (eql :uvec4)))
Method: get-typed-to-foreign ((type-name (eql :uvec3)))
Method: get-typed-to-foreign ((type-name (eql :uvec2)))
Method: get-typed-to-foreign ((type-name (eql :ivec4)))
Method: get-typed-to-foreign ((type-name (eql :ivec3)))
Method: get-typed-to-foreign ((type-name (eql :ivec2)))
Method: get-typed-to-foreign ((type-name (eql :half-vec4)))
Method: get-typed-to-foreign ((type-name (eql :half-vec3)))
Method: get-typed-to-foreign ((type-name (eql :half-vec2)))
Method: get-typed-to-foreign ((type-name (eql :vec4)))
Method: get-typed-to-foreign ((type-name (eql :vec3)))
Method: get-typed-to-foreign ((type-name (eql :vec2)))
Method: get-typed-to-foreign ((type-name (eql :half-float)))
Method: get-typed-to-foreign ((type-name (eql :double)))
Method: get-typed-to-foreign ((type-name (eql :float)))
Method: get-typed-to-foreign ((type-name (eql :uint32)))
Method: get-typed-to-foreign ((type-name (eql :int32)))
Method: get-typed-to-foreign ((type-name (eql :uint)))
Method: get-typed-to-foreign ((type-name (eql :int)))
Method: get-typed-to-foreign ((type-name (eql :ushort)))
Method: get-typed-to-foreign ((type-name (eql :short)))
Method: get-typed-to-foreign ((type-name (eql :uint8)))
Method: get-typed-to-foreign ((type-name (eql :int8)))
Method: get-typed-to-foreign (type-name)
Generic Function: gl-assign-attrib-pointers (array-type &optional attrib-num pointer-offset stride-override normalized instance-divisor)
Package

cepl.internals.

Source

core/internals.lisp.

Methods
Method: gl-assign-attrib-pointers ((array-type (eql cepl.types.predefined:g-pntcb)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/types/predefined/gpu-structs.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.types.predefined:g-pntb)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/types/predefined/gpu-structs.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.types.predefined:g-pncb)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/types/predefined/gpu-structs.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.types.predefined:g-pnb)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/types/predefined/gpu-structs.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.types.predefined:g-pntc)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/types/predefined/gpu-structs.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.types.predefined:g-pnt)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/types/predefined/gpu-structs.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.types.predefined:g-pnc)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/types/predefined/gpu-structs.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.types.predefined:g-pt)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/types/predefined/gpu-structs.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.types.predefined:g-pc)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/types/predefined/gpu-structs.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.types.predefined:g-pn)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/types/predefined/gpu-structs.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.pipelines:elements-indirect-command)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/pipelines/multi-draw.lisp.

Method: gl-assign-attrib-pointers ((array-type (eql cepl.pipelines:arrays-indirect-command)) &optional attrib-offset pointer-offset stride-override normalized instance-divisor)
Source

core/pipelines/multi-draw.lisp.

Method: gl-assign-attrib-pointers (array-type &optional attrib-num pointer-offset stride-override normalized instance-divisor)
Generic Function: init (&optional init-flags)

Implement this method and initialize your system inside it. This is called as the first step of cepl initializing. init-flags are host specific flags that can be passed from cepl

Package

cepl.host.

Source

host/api-0.lisp.

Generic Function: initialized-p (object)

When given an object holding a gpu resource this function will return whether that object has been initialized.

This will be t unless the GL context has not yet been created.

Package

cepl.memory.

Source

core/memory/memory.lisp.

Methods
Method: initialized-p ((object fbo))
Source

core/types/initalized-p.lisp.

Method: initialized-p ((object gpu-array-t))
Source

core/types/initalized-p.lisp.

Method: initialized-p ((object gpu-array-bb))
Source

core/types/initalized-p.lisp.

Method: initialized-p ((object gpu-buffer))
Source

core/types/initalized-p.lisp.

Method: initialized-p ((object texture))
Source

core/types/initalized-p.lisp.

Method: initialized-p (object)
Source

core/types/initalized-p.lisp.

Generic Reader: layout-aligned-offset (object)
Package

%cepl.types.

Methods
Reader Method: layout-aligned-offset ((gl-layout gl-layout))

automatically generated reader method

Source

core/types/layout.lisp.

Target Slot

aligned-offset.

Generic Reader: layout-base-alignment (object)
Package

%cepl.types.

Methods
Reader Method: layout-base-alignment ((gl-layout gl-layout))

automatically generated reader method

Source

core/types/layout.lisp.

Target Slot

base-alignment.

Generic Reader: layout-base-offset (object)
Package

%cepl.types.

Methods
Reader Method: layout-base-offset ((gl-layout gl-layout))

automatically generated reader method

Source

core/types/layout.lisp.

Target Slot

base-offset.

Generic Reader: layout-element-layout (object)
Package

%cepl.types.

Methods
Reader Method: layout-element-layout ((gl-layout gl-layout))

automatically generated reader method

Source

core/types/layout.lisp.

Target Slot

element-layout.

Generic Reader: layout-machine-unit-size (object)
Package

%cepl.types.

Methods
Reader Method: layout-machine-unit-size ((gl-layout gl-layout))

automatically generated reader method

Source

core/types/layout.lisp.

Target Slot

machine-unit-size.

Generic Reader: layout-members (object)
Package

%cepl.types.

Methods
Reader Method: layout-members ((gl-layout gl-layout))

automatically generated reader method

Source

core/types/layout.lisp.

Target Slot

members.

Generic Reader: layout-name (object)
Package

%cepl.types.

Methods
Reader Method: layout-name ((gl-layout gl-layout))

automatically generated reader method

Source

core/types/layout.lisp.

Target Slot

name.

Generic Reader: layout-varjo-type (object)
Package

%cepl.types.

Methods
Reader Method: layout-varjo-type ((gl-layout gl-layout))

automatically generated reader method

Source

core/types/layout.lisp.

Target Slot

varjo-type.

Generic Function: lisp-type->pixel-format (type)

This function, when given a lisp type name, will attempt to find and return an equivalent ‘pixel-format‘.

If no such type is found then nil is returned

Package

cepl.types.

Source

core/types/types.lisp.

Methods
Method: lisp-type->pixel-format ((type (eql cepl.pipelines:arrays-indirect-command)))
Source

core/pipelines/multi-draw.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :int8-vec4)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :int8-vec3)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :int8-vec2)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :uint8-vec4)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :uint8-vec3)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :uint8-vec2)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :mat2x2)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :mat2)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :uvec4)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :uvec3)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :uvec2)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :ivec4)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :ivec3)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :ivec2)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :half-vec4)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :half-vec3)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :half-vec2)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :vec4)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :vec3)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format ((comp-type (eql :vec2)))
Source

core/types/cffi-extra-primitive-types.lisp.

Method: lisp-type->pixel-format (type)
Source

core/types/pixel-format.lisp.

Generic Reader: major-version (object)
Package

cepl.context.

Methods
Reader Method: major-version ((gl-context gl-context))

automatically generated reader method

Source

core/context/gl-context.lisp.

Target Slot

version-major.

Generic Function: make-gpu-array (initial-contents &key dimensions element-type access-style row-alignment)

This function creates a buffer-backed ‘gpu-array‘.
Texture-backed gpu-array can only be created via #’make-texture

‘make-gpu-array‘ is very similar to ‘make-c-array‘.

It can be used in a few different ways:

- with :initial-contents to nil:
In this case you need to provide dimensions and an element-type.

- with :initial-contents populated.
The initial-contents can be a (potentially nested) list, array or ‘c-array‘.

When the :initial-contents are a ‘c-array‘ then the dimensions and element-type
are taken from the ‘c-array‘. As the data is already in foreign memory the
upload will be notable faster that from lisp-data->gpu as no type conversions
are needed

When the :initial-contents are an array then the dimension of the gpu-array
will be the same as the array passed in. CEPL currently only supports up
to 4D gpu-arrays.

When the :initial-contents is a flat list then each element is used as one
element in the gpu-array.

If the :initial-contents is a nested list then you must either:

- specify multiple dimensions and an element-type
- specify an element-type to be some struct type, then nested lists are then
used to populate the fields of the foreign structs. For an example of this
please see [this example](https://github.com/cbaggers/cepl.examples/blob/master/examples/triangle.lisp#L30).

If the :element-type is not provided then CEPL will look at every element in
the initial-contents and try and find the smallest (in bytes) foreign type
which works for every element. This mean if the array is full of single-floats
then CEPL will choose :float, not :double.
Naturally this behaviour is too slow for use in performance critical
applications however it is nice for experimentation and working from the repl.

If you need what would be called a displaced array in lisp then please see the
‘subseq-g‘ function.

Access style is optional but if you are comfortable with
opengl, and know what type of usage pattern this array will
have, you can set this to any of the following:

The access-style argument is a hint to OpenGL on how you intend to use
the array. It is optional whether your gpu manufacturer’s implementation of GL
takes any notice of this option. When they do take notice of it, it will to
optimize access to the underlying data.

There are also no repercussions for accessing the data in a way contrary to the
declared access-style (other than potential performance costs).

:stream-draw :static-draw :dynamic-draw
:stream-read :static-read :dynamic-read
:stream-copy :static-copy :dynamic-copy

Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Methods
Method: make-gpu-array (initial-contents &key dimensions element-type access-style)
Method: make-gpu-array ((initial-contents c-array) &key access-style dimensions)
Method: make-gpu-array ((initial-contents null) &key element-type dimensions access-style row-alignment)
Generic Function: make-length-same (list list-to-match &optional fill-value error-on-shorten-p)
Package

cepl-utils.

Source

core/utils.lisp.

Methods
Method: make-length-same ((list list) (list-to-match list) &optional fill-value error-on-shorten-p)
Generic Reader: minor-version (object)
Package

cepl.context.

Methods
Reader Method: minor-version ((gl-context gl-context))

automatically generated reader method

Source

core/context/gl-context.lisp.

Target Slot

version-minor.

Generic Function: norm (object)

This function, returns a :vec3 which is the normal of the instance.

You can alternatively use the generic function #’norm to get this value.

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: norm ((wrapped-object g-pntcb))
Method: norm ((wrapped-object g-pntb))
Method: norm ((wrapped-object g-pncb))
Method: norm ((wrapped-object g-pnb))
Method: norm ((wrapped-object g-pntc))
Method: norm ((wrapped-object g-pnt))
Method: norm ((wrapped-object g-pnc))
Method: norm ((wrapped-object g-pn))
Generic Function: (setf norm) (obj)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: (setf norm) ((wrapped-object g-pntcb))
Method: (setf norm) ((wrapped-object g-pntb))
Method: (setf norm) ((wrapped-object g-pncb))
Method: (setf norm) ((wrapped-object g-pnb))
Method: (setf norm) ((wrapped-object g-pntc))
Method: (setf norm) ((wrapped-object g-pnt))
Method: (setf norm) ((wrapped-object g-pnc))
Method: (setf norm) ((wrapped-object g-pn))
Generic Function: origin (object)

Returns the origin of the given value as a vec

Package

cepl.measurements.

Source

core/measurements/measurements.lisp.

Methods
Method: origin ((viewport viewport))
Source

core/viewports/viewport.lisp.

Generic Function: (setf origin) (object)
Package

cepl.measurements.

Source

core/measurements/measurements.lisp.

Methods
Method: (setf origin) ((viewport viewport))
Source

core/viewports/viewport.lisp.

Generic Function: pointer (c-array)

Returns the pointer to the start of the foreign data that makes up the array

Package

cepl.c-arrays.

Source

core/c-arrays/def.lisp.

Methods
Method: pointer ((wrapper base-gstruct-wrapper))
Source

core/types/structs.lisp.

Method: pointer ((array c-array))
Generic Function: populate (object data)
Package

cepl.internals.

Source

core/internals.lisp.

Methods
Method: populate ((object g-pntcb) data)
Source

core/types/predefined/gpu-structs.lisp.

Method: populate ((object g-pntb) data)
Source

core/types/predefined/gpu-structs.lisp.

Method: populate ((object g-pncb) data)
Source

core/types/predefined/gpu-structs.lisp.

Method: populate ((object g-pnb) data)
Source

core/types/predefined/gpu-structs.lisp.

Method: populate ((object g-pntc) data)
Source

core/types/predefined/gpu-structs.lisp.

Method: populate ((object g-pnt) data)
Source

core/types/predefined/gpu-structs.lisp.

Method: populate ((object g-pnc) data)
Source

core/types/predefined/gpu-structs.lisp.

Method: populate ((object g-pt) data)
Source

core/types/predefined/gpu-structs.lisp.

Method: populate ((object g-pc) data)
Source

core/types/predefined/gpu-structs.lisp.

Method: populate ((object g-pn) data)
Source

core/types/predefined/gpu-structs.lisp.

Method: populate ((object elements-indirect-command) data)
Source

core/pipelines/multi-draw.lisp.

Method: populate ((object arrays-indirect-command) data)
Source

core/pipelines/multi-draw.lisp.

Generic Function: pos (object)

This function, returns a :vec3 which is the position of the instance.

You can alternatively use the generic function #’pos to get this value.

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: pos ((wrapped-object g-pntcb))
Method: pos ((wrapped-object g-pntb))
Method: pos ((wrapped-object g-pncb))
Method: pos ((wrapped-object g-pnb))
Method: pos ((wrapped-object g-pntc))
Method: pos ((wrapped-object g-pnt))
Method: pos ((wrapped-object g-pnc))
Method: pos ((wrapped-object g-pt))
Method: pos ((wrapped-object g-pc))
Method: pos ((wrapped-object g-pn))
Generic Function: (setf pos) (obj)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: (setf pos) ((wrapped-object g-pntcb))
Method: (setf pos) ((wrapped-object g-pntb))
Method: (setf pos) ((wrapped-object g-pncb))
Method: (setf pos) ((wrapped-object g-pnb))
Method: (setf pos) ((wrapped-object g-pntc))
Method: (setf pos) ((wrapped-object g-pnt))
Method: (setf pos) ((wrapped-object g-pnc))
Method: (setf pos) ((wrapped-object g-pt))
Method: (setf pos) ((wrapped-object g-pc))
Method: (setf pos) ((wrapped-object g-pn))
Generic Function: print-mem (thing &optional size-in-bytes offset)
Package

cepl-utils.

Source

core/utils.lisp.

Methods
Method: print-mem ((thing gpu-array-bb) &optional size-in-bytes offset)
Source

core/gpu-arrays/with-and-push.lisp.

Method: print-mem ((thing c-array) &optional size-in-bytes offset)
Source

core/c-arrays/def.lisp.

Method: print-mem (thing &optional size-in-bytes offset)
Generic Function: pull-g (object)

This function takes a CEPL object containing foreign or gpu data as pulls the data into lisp performing any data conversions that are required on the way.

CEPL types that can be pulled from are:
- ‘c-array‘
- ‘gpu-array‘ (both texture-backed and buffer-backed)
- ‘texture‘
- ‘ubo‘
- Any instance of a type defined using ‘defstruct-g‘

Package

cepl.memory.

Source

core/memory/memory.lisp.

Methods
Method: pull-g ((object g-pntcb))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull-g ((object g-pntb))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull-g ((object g-pncb))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull-g ((object g-pnb))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull-g ((object g-pntc))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull-g ((object g-pnt))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull-g ((object g-pnc))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull-g ((object g-pt))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull-g ((object g-pc))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull-g ((object g-pn))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull-g ((object ssbo))
Source

core/ssbos/ssbos.lisp.

Method: pull-g ((object ubo))
Source

core/ubos/ubo.lisp.

Method: pull-g ((object gpu-array-bb))
Source

core/gpu-arrays/with-and-push.lisp.

Method: pull-g ((object texture))
Source

core/textures/textures.lisp.

Method: pull-g ((object gpu-array-t))
Source

core/textures/textures.lisp.

Method: pull-g ((object elements-indirect-command))
Source

core/pipelines/multi-draw.lisp.

Method: pull-g ((object arrays-indirect-command))
Source

core/pipelines/multi-draw.lisp.

Method: pull-g ((func function))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: pull-g ((asset-name symbol))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: pull-g ((asset-name list))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: pull-g ((object c-array))
Source

core/c-arrays/rest.lisp.

Method: pull-g (object)
Generic Function: pull1-g (object)

This function is a varient of ‘pull-g‘ which, rather than pulling the gpu or foreign data to lisp, will instead pull it 1 level closer to lisp.

What is meant by that is that, if the data is in foreign memory then it will be pulled to lisp data (just like ‘pull-g‘). However if you call ‘pull1-g‘ on data stored on the gpu, then the data will be pulled to foreign memory instead.

To clarify:

(pull1-g c-array) -> lisp list
(pull1-g gpu-array) -> c-array

You can use pull1-g on the following CEPL types.
- ‘c-array‘
- ‘gpu-array‘ (both texture-backed and buffer-backed)
- ‘texture‘
- ‘ubo‘
- Any instance of a type defined using ‘defstruct-g‘

Package

cepl.memory.

Source

core/memory/memory.lisp.

Methods
Method: pull1-g ((object g-pntcb))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull1-g ((object g-pntb))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull1-g ((object g-pncb))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull1-g ((object g-pnb))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull1-g ((object g-pntc))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull1-g ((object g-pnt))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull1-g ((object g-pnc))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull1-g ((object g-pt))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull1-g ((object g-pc))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull1-g ((object g-pn))
Source

core/types/predefined/gpu-structs.lisp.

Method: pull1-g ((object gpu-array-bb))
Source

core/gpu-arrays/with-and-push.lisp.

Method: pull1-g ((object texture))
Source

core/textures/textures.lisp.

Method: pull1-g ((object gpu-array-t))
Source

core/textures/textures.lisp.

Method: pull1-g ((object elements-indirect-command))
Source

core/pipelines/multi-draw.lisp.

Method: pull1-g ((object arrays-indirect-command))
Source

core/pipelines/multi-draw.lisp.

Method: pull1-g ((func function))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: pull1-g ((asset-name list))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: pull1-g ((asset-name symbol))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: pull1-g ((object c-array))
Source

core/c-arrays/rest.lisp.

Method: pull1-g (object)
Generic Function: push-g (object destination)

This function takes a CEPL object as a desination and some data to push to the desination.

It will then upload that data to the destination doing any data conversions that are required on the way.

CEPL types supported as destinations are:
- ‘c-array‘
- ‘gpu-array‘ (both texture-backed and buffer-backed)
- ‘texture‘
- ‘ubo‘
- Any instance of a type defined using ‘defstruct-g‘

Package

cepl.memory.

Source

core/memory/memory.lisp.

Methods
Method: push-g ((object list) (destination g-pntcb))
Source

core/types/predefined/gpu-structs.lisp.

Method: push-g ((object list) (destination g-pntb))
Source

core/types/predefined/gpu-structs.lisp.

Method: push-g ((object list) (destination g-pncb))
Source

core/types/predefined/gpu-structs.lisp.

Method: push-g ((object list) (destination g-pnb))
Source

core/types/predefined/gpu-structs.lisp.

Method: push-g ((object list) (destination g-pntc))
Source

core/types/predefined/gpu-structs.lisp.

Method: push-g ((object list) (destination g-pnt))
Source

core/types/predefined/gpu-structs.lisp.

Method: push-g ((object list) (destination g-pnc))
Source

core/types/predefined/gpu-structs.lisp.

Method: push-g ((object list) (destination g-pt))
Source

core/types/predefined/gpu-structs.lisp.

Method: push-g ((object list) (destination g-pc))
Source

core/types/predefined/gpu-structs.lisp.

Method: push-g ((object list) (destination g-pn))
Source

core/types/predefined/gpu-structs.lisp.

Method: push-g ((object array) (destination ssbo))
Source

core/ssbos/ssbos.lisp.

Method: push-g ((object list) (destination ssbo))
Source

core/ssbos/ssbos.lisp.

Method: push-g ((object c-array) (destination ssbo))
Source

core/ssbos/ssbos.lisp.

Method: push-g ((object array) (destination ubo))
Source

core/ubos/ubo.lisp.

Method: push-g ((object list) (destination ubo))
Source

core/ubos/ubo.lisp.

Method: push-g ((object c-array) (destination ubo))
Source

core/ubos/ubo.lisp.

Method: push-g ((object c-array) (destination gpu-array-bb))
Source

core/gpu-arrays/with-and-push.lisp.

Method: push-g ((object list) (destination gpu-array-bb))
Source

core/gpu-arrays/with-and-push.lisp.

Method: push-g ((object array) (destination gpu-array-t))
Source

core/textures/textures.lisp.

Method: push-g ((object list) (destination gpu-array-t))
Source

core/textures/textures.lisp.

Method: push-g ((object array) (destination texture))
Source

core/textures/textures.lisp.

Method: push-g ((object list) (destination texture))
Source

core/textures/textures.lisp.

Method: push-g ((object c-array) (destination gpu-array-t))
Source

core/textures/textures.lisp.

Method: push-g ((object c-array) (destination texture))
Source

core/textures/textures.lisp.

Method: push-g ((object list) (destination elements-indirect-command))
Source

core/pipelines/multi-draw.lisp.

Method: push-g ((object list) (destination arrays-indirect-command))
Source

core/pipelines/multi-draw.lisp.

Method: push-g (object (destination c-array))
Source

core/c-arrays/rest.lisp.

Generic Function: request-context (width height title fullscreen no-frame alpha-size depth-size stencil-size red-size green-size blue-size buffer-size double-buffer hidden resizable gl-version)

Implement this method and return a list containing: - gl-context as the first element
- window as the second element

Package

cepl.host.

Source

host/api-0.lisp.

Generic Function: resolution (object)

Returns the resolution of the given value as a vec*

Package

cepl.measurements.

Source

core/measurements/measurements.lisp.

Methods
Method: resolution ((gpu-array gpu-array-t))
Source

core/gpu-arrays/texture-backed.lisp.

Method: resolution ((texture texture))
Source

core/textures/textures.lisp.

Method: resolution ((viewport viewport))
Source

core/viewports/viewport.lisp.

Method: resolution (object)
Generic Function: (setf resolution) (object)
Package

cepl.measurements.

Source

core/measurements/measurements.lisp.

Methods
Method: (setf resolution) ((viewport viewport))
Source

core/viewports/viewport.lisp.

Generic Function: shutdown ()

Implement this with code to shutdown the host. This will be called when cepl is shutdown

Package

cepl.host.

Source

host/api-0.lisp.

Generic Function: symbol-names-cepl-structp (sym)
Package

cepl.internals.

Source

core/internals.lisp.

Methods
Method: symbol-names-cepl-structp ((sym (eql cepl.types.predefined:g-pntcb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.types.predefined:g-pntb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.types.predefined:g-pncb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.types.predefined:g-pnb)))
Source

core/types/predefined/gpu-structs.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.types.predefined:g-pntc)))
Source

core/types/predefined/gpu-structs.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.types.predefined:g-pnt)))
Source

core/types/predefined/gpu-structs.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.types.predefined:g-pnc)))
Source

core/types/predefined/gpu-structs.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.types.predefined:g-pt)))
Source

core/types/predefined/gpu-structs.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.types.predefined:g-pc)))
Source

core/types/predefined/gpu-structs.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.types.predefined:g-pn)))
Source

core/types/predefined/gpu-structs.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.pipelines:elements-indirect-command)))
Source

core/pipelines/multi-draw.lisp.

Method: symbol-names-cepl-structp ((sym (eql cepl.pipelines:arrays-indirect-command)))
Source

core/pipelines/multi-draw.lisp.

Method: symbol-names-cepl-structp (sym)
Generic Function: tangent (object)

This function, returns a :vec3 which is the tangent of the instance.

You can alternatively use the generic function #’tangent to get this value.

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: tangent ((wrapped-object g-pntcb))
Method: tangent ((wrapped-object g-pntb))
Method: tangent ((wrapped-object g-pncb))
Method: tangent ((wrapped-object g-pnb))
Generic Function: (setf tangent) (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: (setf tangent) ((wrapped-object g-pntcb))
Method: (setf tangent) ((wrapped-object g-pntb))
Method: (setf tangent) ((wrapped-object g-pncb))
Method: (setf tangent) ((wrapped-object g-pnb))
Generic Function: tex (object)

This function, returns a :vec2 which is the texture of the instance.

You can alternatively use the generic function #’tex to get this value.

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: tex ((wrapped-object g-pntcb))
Method: tex ((wrapped-object g-pntb))
Method: tex ((wrapped-object g-pntc))
Method: tex ((wrapped-object g-pnt))
Method: tex ((wrapped-object g-pt))
Generic Function: (setf tex) (obj)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Methods
Method: (setf tex) ((wrapped-object g-pntcb))
Method: (setf tex) ((wrapped-object g-pntb))
Method: (setf tex) ((wrapped-object g-pntc))
Method: (setf tex) ((wrapped-object g-pnt))
Method: (setf tex) ((wrapped-object g-pt))
Generic Function: version-float (object)
Package

cepl.context.

Methods
Method: version-float ((ctx cepl-context))
Source

core/context/cepl-context.lisp.

Reader Method: version-float ((gl-context gl-context))

automatically generated reader method

Source

core/context/gl-context.lisp.

Target Slot

version-float.

Generic Function: viewport (obj)

This is a placeholder generic function for future apis.
Feel free to implement this in your own programs when yo want to get a ‘viewport‘ from some container

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Generic Function: (setf viewport) (obj)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.


5.1.7 Standalone methods

Method: expand-from-foreign (ptr (type cepl.types.predefined.g-pncb.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: expand-from-foreign (ptr (type cepl.types.predefined.g-pnb.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: expand-from-foreign (ptr (type cepl.types.predefined.g-pc.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: expand-from-foreign (ptr (type cepl.types.predefined.g-pnc.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: expand-from-foreign (ptr (type cepl.types.predefined.g-pnt.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: expand-from-foreign (ptr (type cepl.types.predefined.g-pntcb.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: expand-from-foreign (ptr (type cepl.types.predefined.g-pntb.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: expand-from-foreign (ptr (type cepl.types.predefined.g-pntc.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: expand-from-foreign (ptr (type cepl.types.predefined.g-pn.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: expand-from-foreign (ptr (type cepl.types.predefined.g-pt.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: expand-from-foreign (ptr (type cepl.pipelines.elements-indirect-command.cffi-ct-type))
Package

cffi.

Source

core/pipelines/multi-draw.lisp.

Method: expand-from-foreign (ptr (type cepl.pipelines.arrays-indirect-command.cffi-ct-type))
Package

cffi.

Source

core/pipelines/multi-draw.lisp.

Method: initialize-instance :after ((lambda-g gpu-lambda-state) &key)
Source

core/pipelines/gpu-lambda.lisp.

Method: make-load-form ((ctx compile-context) &optional environment)
Source

core/pipelines/compile-context.lisp.

Method: make-load-form ((key func-key) &optional environment)
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: make-load-form ((spec gpu-func-spec) &optional environment)
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: make-load-form ((layout gl-layout) &optional environment)
Source

core/types/layout.lisp.

Method: make-load-form ((obj cepl-struct-definition) &optional environment)
Source

core/types/structs.lisp.

Method: make-load-form ((slot gl-struct-slot) &optional environment)
Source

core/types/structs.lisp.

Reader Method: name ((func-key func-key))

automatically generated reader method

Package

varjo.internals.

Source

core/pipelines/gpu-pipeline-base.lisp.

Target Slot

name.

Method: print-object ((obj arrays-indirect-command) stream)
Source

core/pipelines/multi-draw.lisp.

Method: print-object ((obj elements-indirect-command) stream)
Source

core/pipelines/multi-draw.lisp.

Method: print-object ((obj func-key) stream)
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: print-object ((obj g-pntc) stream)
Source

core/types/predefined/gpu-structs.lisp.

Method: print-object ((obj g-pnb) stream)
Source

core/types/predefined/gpu-structs.lisp.

Method: print-object ((obj g-pc) stream)
Source

core/types/predefined/gpu-structs.lisp.

Method: print-object ((obj g-pt) stream)
Source

core/types/predefined/gpu-structs.lisp.

Method: print-object ((obj g-pntcb) stream)
Source

core/types/predefined/gpu-structs.lisp.

Method: print-object ((obj g-pntb) stream)
Source

core/types/predefined/gpu-structs.lisp.

Method: print-object ((obj g-pnc) stream)
Source

core/types/predefined/gpu-structs.lisp.

Method: print-object ((obj g-pn) stream)
Source

core/types/predefined/gpu-structs.lisp.

Method: print-object ((obj g-pnt) stream)
Source

core/types/predefined/gpu-structs.lisp.

Method: print-object ((obj g-pncb) stream)
Source

core/types/predefined/gpu-structs.lisp.

Method: print-object ((context cepl-context) stream)
Source

core/context/types.lisp.

Method: print-object ((object gpu-array-t) stream)
Source

core/textures/def.lisp.

Method: print-object ((object sampler) stream)
Source

core/samplers/samplers.lisp.

Method: print-object ((object buffer-texture) stream)
Source

core/textures/def.lisp.

Method: print-object ((object c-array) stream)
Source

core/c-arrays/def.lisp.

Method: print-object ((object fbo) stream)
Source

core/fbos/fbo.lisp.

Method: print-object ((object gpu-buffer) stream)
Source

core/gpu-buffers/gpu-buffers.lisp.

Method: print-object ((object buffer-stream) stream)
Source

core/streams/buffer-streams.lisp.

Method: print-object ((tfs transform-feedback-stream) stream)
Source

core/transform-feedback/transform-feedback.lisp.

Method: print-object ((object empty-fbo-params) stream)
Source

core/fbos/fbo.lisp.

Method: print-object ((object gpu-array) stream)
Source

core/gpu-arrays/buffer-backed.lisp.

Method: print-object ((obj render-buffer) stream)
Source

core/render-buffers/render-buffer.lisp.

Method: print-object ((ssbo ssbo) stream)
Source

core/ssbos/ssbos.lisp.

Method: print-object ((sp stencil-params) stream)
Source

core/stencil/stencil.lisp.

Method: print-object ((ubo ubo) stream)
Source

core/ubos/ubo.lisp.

Method: print-object ((obj gl-layout) stream)
Source

core/types/layout.lisp.

Method: print-object ((object texture) stream)
Source

core/textures/def.lisp.

Method: translate-from-foreign (ptr (type cepl.types.predefined.g-pncb.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: translate-from-foreign (ptr (type cepl.types.predefined.g-pnb.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: translate-from-foreign (ptr (type cepl.types.predefined.g-pc.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: translate-from-foreign (ptr (type cepl.types.predefined.g-pnc.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: translate-from-foreign (ptr (type cepl.types.predefined.g-pnt.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: translate-from-foreign (ptr (type cepl.types.predefined.g-pntcb.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: translate-from-foreign (ptr (type cepl.types.predefined.g-pntb.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: translate-from-foreign (ptr (type cepl.types.predefined.g-pntc.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: translate-from-foreign (ptr (type cepl.types.predefined.g-pn.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: translate-from-foreign (ptr (type cepl.types.predefined.g-pt.cffi-ct-type))
Package

cffi.

Source

core/types/predefined/gpu-structs.lisp.

Method: translate-from-foreign (ptr (type cepl.pipelines.elements-indirect-command.cffi-ct-type))
Package

cffi.

Source

core/pipelines/multi-draw.lisp.

Method: translate-from-foreign (ptr (type cepl.pipelines.arrays-indirect-command.cffi-ct-type))
Package

cffi.

Source

core/pipelines/multi-draw.lisp.

Method: type->type-spec ((type v_elements-indirect-command))
Package

varjo.internals.

Source

core/pipelines/multi-draw.lisp.

Method: type->type-spec ((type v_arrays-indirect-command))
Package

varjo.internals.

Source

core/pipelines/multi-draw.lisp.

Method: type->type-spec ((type v_g-pnt))
Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Method: type->type-spec ((type v_g-pncb))
Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Method: type->type-spec ((type v_g-pnb))
Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Method: type->type-spec ((type v_g-pntc))
Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Method: type->type-spec ((type v_g-pt))
Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Method: type->type-spec ((type v_g-pntcb))
Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Method: type->type-spec ((type v_g-pc))
Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Method: type->type-spec ((type v_g-pntb))
Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Method: type->type-spec ((type v_g-pn))
Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Method: type->type-spec ((type v_g-pnc))
Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Reader Method: v-glsl-string ((v_elements-indirect-command v_elements-indirect-command))

automatically generated reader method

Package

varjo.internals.

Source

core/pipelines/multi-draw.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_arrays-indirect-command v_arrays-indirect-command))

automatically generated reader method

Package

varjo.internals.

Source

core/pipelines/multi-draw.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_g-pnt v_g-pnt))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_g-pncb v_g-pncb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_g-pnb v_g-pnb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_g-pntc v_g-pntc))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_g-pt v_g-pt))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_g-pntcb v_g-pntcb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_g-pc v_g-pc))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_g-pntb v_g-pntb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_g-pn v_g-pn))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

glsl-string.

Reader Method: v-glsl-string ((v_g-pnc v_g-pnc))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

glsl-string.

Reader Method: v-slots ((v_elements-indirect-command v_elements-indirect-command))

automatically generated reader method

Package

varjo.internals.

Source

core/pipelines/multi-draw.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_arrays-indirect-command v_arrays-indirect-command))

automatically generated reader method

Package

varjo.internals.

Source

core/pipelines/multi-draw.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_g-pnt v_g-pnt))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_g-pncb v_g-pncb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_g-pnb v_g-pnb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_g-pntc v_g-pntc))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_g-pt v_g-pt))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_g-pntcb v_g-pntcb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_g-pc v_g-pc))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_g-pntb v_g-pntb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_g-pn v_g-pn))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

slots.

Reader Method: v-slots ((v_g-pnc v_g-pnc))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

slots.

Method: v-type-of ((gss gl-struct-slot))
Package

varjo.internals.

Source

core/types/structs.lisp.


5.1.8 Conditions

Condition: adjust-gpu-array-mismatched-dimensions
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: current-dim
Initargs

:current-dim

Slot: new-dim
Initargs

:new-dim

Condition: adjust-gpu-array-shared-buffer
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: array
Package

common-lisp.

Initargs

:array

Slot: shared-count
Initargs

:shared-count

Condition: another-query-is-active
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: query
Initargs

:query

Slot: current
Initargs

:current

Condition: attachment-viewport-empty-fbo
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: fbo
Initargs

:fbo

Slot: attachment
Initargs

:attachment

Condition: attachments-with-different-sizes
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: args
Initargs

:args

Slot: sizes
Initargs

:sizes

Condition: bad-c-array-element
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: incorrect-type
Initargs

:incorrect-type

Slot: correct-type
Initargs

:correct-type

Slot: elem
Initargs

:elem

Slot: initial-contents
Initargs

:initial-contents

Slot: extra-info-string
Initargs

:extra-info-string

Condition: bad-type-for-buffer-stream-data
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: type
Package

common-lisp.

Initargs

:type

Condition: bake-invalid-pipeling-arg
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: invalid-arg
Initargs

:invalid-arg

Condition: bake-invalid-uniform-name
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: proposed
Initargs

:proposed

Slot: invalid
Initargs

:invalid

Condition: bake-uniform-invalid-values
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: proposed
Initargs

:proposed

Slot: invalid
Initargs

:invalid

Condition: buffer-backed-texture-establish-image-format
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: type-name
Initargs

:type-name

Condition: buffer-backed-texture-invalid-args
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: buffer-backed-texture-invalid-image-format
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: type-name
Initargs

:type-name

Condition: buffer-backed-texture-invalid-samplers
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: buffer-stream-has-invalid-primitive-for-stream
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: pline-prim
Initargs

:pline-prim

Slot: stream-prim
Initargs

:stream-prim

Condition: c-array-total-size-type-error
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: size
Initargs

:size

Slot: required-type
Initargs

:required-type

Condition: cannot-extract-stream-length-from-layouts
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: layouts
Initargs

:layouts

Condition: cannot-keep-data-when-uploading
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: data
Initargs

:data

Condition: compile-g-missing-requested-feature
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: form
Initargs

:form

Condition: compute-pipeline-must-be-single-stage
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: stages
Initargs

:stages

Condition: could-not-layout-type
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: type
Package

common-lisp.

Initargs

:type

Condition: delete-multi-func-error
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: choices
Initargs

:choices

Condition: dispatch-called-outside-of-map-g
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Condition: dont-define-space-to-self
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: space
Package

common-lisp.

Initargs

:space

Condition: failed-to-test-compile-gpu-func
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

warning.

Direct slots
Slot: gfunc-name
Initargs

:gfunc-name

Slot: missing-func-names
Initargs

:missing-func-names

Condition: fbo-binding-missing
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: kind
Initargs

:kind

Slot: current-surface
Initargs

:current-surface

Condition: fbo-missing-outputs
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: missing
Initargs

:missing

Slot: fbo
Initargs

:fbo

Condition: fbo-target-not-valid-constant
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: target
Initargs

:target

Condition: func-keyed-pipeline-not-found
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

warning.

Direct slots
Slot: callee
Initargs

:callee

Slot: func
Initargs

:func

Condition: functions-in-non-uniform-args
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Condition: gfun-invalid-arg-format
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: gfun-name
Initargs

:gfun-name

Slot: invalid-pair
Initargs

:invalid-pair

Condition: gl-context-initialized-from-incorrect-thread
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: ctx-thread
Initargs

:ctx-thread

Slot: init-thread
Initargs

:init-thread

Condition: glsl-geom-stage-no-out-layout
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: glsl-body
Initargs

:glsl-body

Condition: glsl-version-conflict
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: issue
Initargs

:issue

Condition: glsl-version-conflict-in-gpu-func
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: context
Package

varjo.internals.

Initargs

:context

Condition: gpu-array-from-buffer-missing-args
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: element-type
Initargs

:element-type

Slot: dimensions
Initargs

:dimensions

Condition: gpu-array-from-id-missing-args
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: element-type
Initargs

:element-type

Slot: dimensions
Initargs

:dimensions

Condition: gpu-func-spec-not-found
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: types
Initargs

:types

Condition: gpu-func-symbol-name
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: alternatives
Initargs

:alternatives

Slot: env
Initargs

:env

Condition: image-format->lisp-type-failed
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: type-name
Initargs

:type-name

Condition: image-format->pixel-format-failed
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: type-name
Initargs

:type-name

Condition: inconsistent-struct-layout
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: target
Initargs

:target

Slot: slots
Initargs

:slots

Condition: incorrect-number-of-arrays-in-tfs
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: tfs
Initargs

:tfs

Slot: tfs-count
Initargs

:tfs-count

Slot: count
Package

common-lisp.

Initargs

:count

Condition: index-layout-with-unknown-length
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: layout
Initargs

:layout

Condition: index-on-buffer-stream-with-no-gpu-arrays
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: index-on-buffer-stream-with-no-gpu-layouts
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: invalid-args-in-make-tfs
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: args
Initargs

:args

Condition: invalid-attachments-for-empty-fbo
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: args
Initargs

:args

Condition: invalid-compose-gpipe-form
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: pipeline-name
Initargs

:pipeline-name

Slot: clauses
Initargs

:clauses

Condition: invalid-context-for-assert-gpipe
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: context
Package

varjo.internals.

Initargs

:context

Condition: invalid-context-for-assert-options
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: context
Package

varjo.internals.

Initargs

:context

Condition: invalid-cube-fbo-args
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: args
Initargs

:args

Condition: invalid-data-layout-specifier
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: specifier
Initargs

:specifier

Slot: valid-specifiers
Initargs

:valid-specifiers

Condition: invalid-defpipeline-options
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: pipeline-name
Initargs

:pipeline-name

Slot: invalid-options
Initargs

:invalid-options

Slot: valid-options
Initargs

:valid-options

Condition: invalid-empty-fbo-declaration
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: decl
Initargs

:decl

Condition: invalid-gpu-arrays-layout
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: layout
Initargs

:layout

Condition: invalid-gpu-buffer-layout
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: layout
Initargs

:layout

Condition: invalid-gpu-function-args
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: unknown-key-arguments
Initargs

:unknown-key-arguments

Slot: invalid-syntax
Initargs

:invalid-syntax

Slot: constant-names
Initargs

:constant-names

Slot: incorrectly-typed-args
Initargs

:incorrectly-typed-args

Condition: invalid-inline-glsl-stage-arg-layout
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: arg
Initargs

:arg

Condition: invalid-keywords-for-shader-gpipe-args
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: pipeline-name
Initargs

:pipeline-name

Slot: keys
Initargs

:keys

Condition: invalid-layout-for-inargs
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: type-name
Initargs

:type-name

Slot: layout
Initargs

:layout

Condition: invalid-layout-for-uniform
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: type-name
Initargs

:type-name

Slot: layout
Initargs

:layout

Slot: func-p
Initargs

:func-p

Condition: invalid-options-for-texture
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: buffer-storage
Initargs

:buffer-storage

Slot: cubes
Initargs

:cubes

Slot: dimensions
Initargs

:dimensions

Slot: layer-count
Initargs

:layer-count

Slot: mipmap
Initargs

:mipmap

Slot: multisample
Initargs

:multisample

Slot: rectangle
Initargs

:rectangle

Condition: invalid-sampler-wrap-value
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: sampler
Initargs

:sampler

Slot: value
Initargs

:value

Condition: invalid-shader-gpipe-form
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: pipeline-name
Initargs

:pipeline-name

Slot: valid-forms
Initargs

:valid-forms

Slot: invalid-forms
Initargs

:invalid-forms

Condition: invalid-shader-gpipe-stage-keys
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: pipeline-name
Initargs

:pipeline-name

Slot: keys
Initargs

:keys

Condition: invalid-sizes-in-make-tfs
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: args
Initargs

:args

Condition: invalid-stage-for-single-stage-pipeline
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: kind
Initargs

:kind

Condition: invalid-stream-layout
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: layout
Initargs

:layout

Condition: lisp-type->image-format-failed
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: type-name
Initargs

:type-name

Condition: make-arrays-layout-count-mismatch
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: current-count
Initargs

:current-count

Slot: layouts
Initargs

:layouts

Condition: make-arrays-layout-mismatch
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: current-sizes
Initargs

:current-sizes

Slot: requested-sizes
Initargs

:requested-sizes

Condition: make-gpu-array-from-c-array-mismatched-dimensions
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: c-arr-dimensions
Initargs

:c-arr-dimensions

Slot: provided-dimensions
Initargs

:provided-dimensions

Condition: make-gpu-buffer-from-id-clashing-keys
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: args
Initargs

:args

Condition: make-tex-array-not-match-type
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: element-type
Initargs

:element-type

Slot: pixel-format
Initargs

:pixel-format

Slot: supposed-type
Initargs

:supposed-type

Slot: array-type
Initargs

:array-type

Condition: make-tex-array-not-match-type2
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: element-type
Initargs

:element-type

Slot: initial-contents
Initargs

:initial-contents

Condition: make-tex-no-content-no-type
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: mapping-over-partial-pipeline
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: args
Initargs

:args

Condition: max-context-count-reached
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: max
Package

common-lisp.

Initargs

:max

Condition: mixed-pipelines-in-with-tb
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: multi-func-error
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: choices
Initargs

:choices

Condition: nested-with-transform-feedback
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: no-named-stages
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: stages
Initargs

:stages

Condition: non-consecutive-feedback-groups
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: groups
Initargs

:groups

Condition: not-a-gpu-lambda
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: thing
Initargs

:thing

Condition: not-enough-args-for-implicit-gpipe-stages
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: pipeline-name
Initargs

:pipeline-name

Slot: clauses
Initargs

:clauses

Condition: one-stage-non-explicit
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: partial-lambda-pipeline
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: partial-stages
Initargs

:partial-stages

Condition: pipeline-invalid-null-stage
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: args
Initargs

:args

Condition: pipeline-recompile-in-tfb-scope
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Condition: pixel-format->image-format-failed
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: type-name
Initargs

:type-name

Condition: pixel-format-in-bb-texture
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: pixel-format
Initargs

:pixel-format

Condition: pull*-g-not-enabled
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: pull-g-not-cached
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

warning.

Direct slots
Slot: asset-name
Initargs

:asset-name

Condition: query-is-active-bug
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: query
Initargs

:query

Condition: query-is-already-active
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: query
Initargs

:query

Condition: query-not-active
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: query
Initargs

:query

Condition: quote-in-buffer-layout
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: layout
Initargs

:layout

Condition: quote-symbol-found-in-fbo-dimensions
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: form
Initargs

:form

Condition: shader-pipeline-non-null-args
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: pipeline-name
Initargs

:pipeline-name

Condition: shared-context-created-from-incorrect-thread
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: ctx-thread
Initargs

:ctx-thread

Slot: init-thread
Initargs

:init-thread

Condition: stage-in-context-only-valid-for-glsl-stages
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Condition: stage-not-found
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: designator
Initargs

:designator

Condition: stage-not-valid-for-function-restriction
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: stage
Initargs

:stage

Slot: func-stage
Initargs

:func-stage

Condition: state-restore-limitation-blending
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: state-restore-limitation-transform-feedback
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Condition: struct-in-glsl-stage-args
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: arg-names
Initargs

:arg-names

Condition: symbol-stage-designator
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: designator
Initargs

:designator

Slot: possible-choices
Initargs

:possible-choices

Condition: symbol-stage-designators
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: designator-choice-pairs
Initargs

:designator-choice-pairs

Condition: texture-dimensions-lequal-zero
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: dimensions
Initargs

:dimensions

Condition: tfs-setf-arrays-whilst-bound
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

warning.

Condition: tried-to-make-context-on-thread-that-already-has-one
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: context
Package

varjo.internals.

Initargs

:context

Slot: thread
Initargs

:thread

Condition: unknown-stage-kind
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: stage
Initargs

:stage

Condition: unknown-symbols-in-pipeline-context
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: full
Initargs

:full

Slot: issue
Initargs

:issue

Slot: for
Initargs

:for


5.1.9 Structures

Structure: any-samples-passed-conservative-query
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

scoped-gpu-query.

Direct slots
Slot: enum
Type

(and (signed-byte 32) (signed-byte 32))

Initform

36202

Readers

any-samples-passed-conservative-query-enum.

Writers

This slot is read-only.

Slot: cache-id
Type

(and (integer 0 7) (integer 0 7))

Initform

3

Readers

any-samples-passed-conservative-query-cache-id.

Writers

This slot is read-only.

Structure: any-samples-passed-query
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

scoped-gpu-query.

Direct slots
Slot: enum
Type

(and (signed-byte 32) (signed-byte 32))

Initform

35887

Readers

any-samples-passed-query-enum.

Writers

This slot is read-only.

Slot: cache-id
Type

(and (integer 0 7) (integer 0 7))

Initform

2

Readers

any-samples-passed-query-cache-id.

Writers

This slot is read-only.

Structure: arrays-indirect-command
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: att
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: array
Package

common-lisp.

Type

(or null %cepl.types:gpu-array-t %cepl.types:render-buffer)

Readers

att-array.

Writers

(setf att-array).

Slot: blend
Type

boolean

Readers

att-blend.

Writers

(setf att-blend).

Slot: bparams
Type

(or null %cepl.types:blending-params)

Readers

att-bparams.

Writers

(setf att-bparams).

Slot: owned-p
Type

boolean

Readers

att-owned-p.

Writers

(setf att-owned-p).

Slot: viewport
Type

(or null %cepl.types:viewport)

Readers

att-viewport.

Writers

(setf att-viewport).

Structure: blending-params

Blending Parameters dictate how a color is written into an ‘FBO‘’s attachment if there is already a color there.

Blending Parameters (or ‘blending-params‘) can be applied in CEPL in 3 places:

- On an FBO:
This sets the rules for all attachments in the FBO

- On an FBO Attachment:
This overrides the rules set on the FBO but only for the one attachment.
This is only supported on some versions of OpenGL.

- On a blending-params object:
This object can then be applied using with-blending
(see with-blending’s docstring for more info)

The interaction between the options in the blending-params is fairly complex
so whilst we seek to give an introduction here, some cases will be best covered
in other documentation.

**– The Parameters –**

There are 3 pairs of parameters that work together to tell GL how to compute
the final color.

In all cases below ’source’ means the color coming from the pipeline that needs
to be written into the FBO, and ’destination’ means the color already in the FBO

Conceptually what is happening is that ‘source-rgb‘, ‘source-alpha‘, ‘destination-rgb‘ and ‘destination-alpha‘ all name functions that will be called on their respective values. This will result in new source-rgb, source-alpha, destinations-rgb and destination-alpha values.

Those new values are then given to the ‘mode-rgb‘ and ‘mode-alpha‘ functions which compute the final color.

So in pseudo-code it would look this this:

(defun compute-final-color (blend-params src-rgb src-alpha
dest-rgb dest-alpha)
(let ((new-src-rgb
(funcall (blend-params-source-rgb blend-params) src-rgb
dest-rgb))
(new-dest-rgb
(funcall (blend-params-destination-rgb blend-params) src-rgb
dest-rgb))
(new-src-alpha
(funcall (blend-params-source-alpha blend-params) src-alpha
dest-alpha))
(new-dest-alpha
(funcall (blend-params-destination-alpha blend-params) src-alpha
dest-alpha)))
;; compute final colors
(values (funcall (blend-params-mode-rgb blend-params) new-src-rgb
new-dest-rgb)
(funcall (blend-params-mode-alpha blend-params) new-src-alpha
new-dest-alpha))))

**– :source-rgb, :source-alpha, :destination-rgb & :destination-alpha –**

This is the list of operations and what they do to the *-rgb or *alpha values given.

Parameter | RGB Factor | Alpha Factor ————————————————————————– :zero | (v! 0 0 0) | 0
:one | (v! 1 1 1) | 1
:src-color | (v! rs0 gs0 bs0) | as0 :one-minus-src-color | (- (v! 1 1 1) (v! rs0 gs0 bs0)) | 1 - as0 :dst-color | (v! rd gd bd) | ad :one-minus-dst-color | (- (v! 1 1 1) (v! rd gd bd)) | 1 - ad :src-alpha | (v! as0 as0 as0) | as0 :one-minus-src-alpha | (- (v! 1 1 1) (v! as0 as0 as0)) | 1 - as0 :dst-alpha | (v! ad ad ad) | ad :one-minus-dst-alpha | (- (v! 1 1 1) (v! ad ad ad)) | ad :constant-color | (v! rc gc bc) | ac :one-minus-constant-color | (- (v! 1 1 1) (v! rc gc bc)) | 1 - ac :constant-alpha | (v! ac ac ac) | ac :one-minus-constant-alpha | (- (v! 1 1 1) (v! ac ac ac)) | 1 - ac :src-alpha-saturate | (v! i i i) | 1
:src1-color | (v! rs1 gs1 bs1) | as1 :one-minus-src1-color | (- (v! 1 1 1) (v! rs1 gs1 bs1)) | 1 - as1 :src1-alpha | (v! as1 as1 as1) | as1 :one-minus-src1-alpha | (- (v! 1 1 1) (v! as1 as1 as1)) | 1 - as1

**– :mode-rgb & :mode-alpha –**

As mentioned above, to compute the final color two equations are used:
one for the RGB portion of the color, and one for the alpha of the color.
This is useful if you want treat rgb and alpha differently when producing the
end result.

The equations available are:

:func-add - The source and destination colors are added to each other.
O = sS + dD. The s and d are blending parameters that are
multiplied into each of S and D before the addition.

:func-subtract - Subtracts the destination from the source. O = sS - dD.
The source and dest are again multiplied by blending parameters.

:func-reverse-subtract - Subtracts the source from the destination.
O = sD - dS. The source and dest are multiplied by blending parameters.

:min - The output color is the component-wise minimum value of the source
and dest colors. So performing :min in the RGB equation means that
Or = min(Sr, Dr), Og = min(Sg, Dg), and so forth.
The parameters s and d are ignored for this equation.

:max - The output color is the component-wise maximum value of the source and
dest colors. The parameters s and d are ignored for this equation.

**– Precision –**

Despite the apparent precision of the above equations, blending arithmetic is
not exactly specified, because blending operates with imprecise integer color values.
However, a blend factor that should be equal to 1 is guaranteed not to modify
its multiplicand, and a blend factor equal to 0 reduces its multiplicand to 0.

For example, when:

- srcRGB is GL_SRC_ALPHA
- dstRGB is GL_ONE_MINUS_SRC_ALPHA,
- As0 is equal to 1

the equations reduce to simple replacement:

> todo

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: mode-rgb
Type

keyword

Initform

:func-add

Readers

blending-params-mode-rgb.

Writers

(setf blending-params-mode-rgb).

Slot: mode-alpha
Type

keyword

Initform

:func-add

Readers

blending-params-mode-alpha.

Writers

(setf blending-params-mode-alpha).

Slot: source-rgb
Type

keyword

Initform

:src-alpha

Readers

blending-params-source-rgb.

Writers

(setf blending-params-source-rgb).

Slot: source-alpha
Type

keyword

Initform

:src-alpha

Readers

blending-params-source-alpha.

Writers

(setf blending-params-source-alpha).

Slot: destination-rgb
Type

keyword

Initform

:one-minus-src-alpha

Readers

blending-params-destination-rgb.

Writers

(setf blending-params-destination-rgb).

Slot: destination-alpha
Type

keyword

Initform

:one-minus-src-alpha

Readers

blending-params-destination-alpha.

Writers

(setf blending-params-destination-alpha).

Structure: buffer-stream

A buffer-stream is a structure that represents stream of gpu-data composed from gpu-array and/or gpu-buffers.

To render in CEPL we map a buffer-stream over a gpu-pipeline. The buffer-stream contains data (usually geometry) that is passed to the vertex-shader.

A buffer-stream composes various sources of gpu-data together. So if, for example, the vertex shader took 3 arguments of types :vec2 :vec3 :float. Then you could make a stream that composes 3 gpu-arrays with element-types :vec2 :vec3 :float and map this over the pipeline.

Naturally, as we are talking about buffer-stream, only buffer-backed gpu-arrays can be composed with buffer-streams.

Info for people used to OpenGL:
A buffer-stream is basically a VAO with some extra metadata such as the ’range’ of data to draw the ’style’ of drawing & the ’primitive’ the data represents .

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: vao
Type

%cepl.types:gl-id

Initform

0

Readers

buffer-stream-vao.

Writers

(setf buffer-stream-vao).

Slot: %start
Type

(unsigned-byte 64)

Initform

0

Readers

buffer-stream-%start.

Writers

(setf buffer-stream-%start).

Slot: %start-byte
Type

(unsigned-byte 64)

Initform

0

Readers

buffer-stream-%start-byte.

Writers

(setf buffer-stream-%start-byte).

Slot: base-vertex
Type

(unsigned-byte 32)

Initform

0

Readers

buffer-stream-base-vertex.

Writers

(setf buffer-stream-base-vertex).

Slot: length
Package

common-lisp.

Type

(unsigned-byte 64)

Initform

1

Readers

buffer-stream-length.

Writers

(setf buffer-stream-length).

Slot: %index-type-enum
Type

%cepl.types:gl-enum-value

Initform

0

Readers

buffer-stream-%index-type-enum.

Writers

(setf buffer-stream-%index-type-enum).

Slot: %index-type-size
Type

(unsigned-byte 8)

Initform

0

Readers

buffer-stream-%index-type-size.

Writers

(setf buffer-stream-%index-type-size).

Slot: gpu-arrays
Type

list

Readers

buffer-stream-gpu-arrays.

Writers

(setf buffer-stream-gpu-arrays).

Slot: %primitive
Type

symbol

Readers

buffer-stream-%primitive.

Writers

(setf buffer-stream-%primitive).

Slot: primitive-group-id
Type

(unsigned-byte 8)

Initform

0

Readers

buffer-stream-primitive-group-id.

Writers

(setf buffer-stream-primitive-group-id).

Slot: draw-mode-val
Type

(unsigned-byte 32)

Initform

0

Readers

buffer-stream-draw-mode-val.

Writers

(setf buffer-stream-draw-mode-val).

Slot: patch-length
Type

(unsigned-byte 8)

Initform

0

Readers

buffer-stream-patch-length.

Writers

(setf buffer-stream-patch-length).

Slot: managed
Type

boolean

Readers

buffer-stream-managed.

Writers

(setf buffer-stream-managed).

Structure: buffer-texture

‘Buffer-texture‘s are a special kind of ‘texture‘ where the data resides, not in texture memory, but in buffer memory.

This means that when you call texref on this texture you will receive a buffer-backed texture instead of the usual texture-backed ones.

buffer-textures are created by calling ‘make-texture‘ with the :buffer key argument set to t.

Buffer textures have limitations over regular textures:

- cannot be mipmapped
- can only only have one ‘gpu-array‘
- that gpu-array must be one dimensional
- can only be accessed in shaders with #’texel-fetch
- can have a more limited number of valid element-types[0] to choose from see *valid-image-formats-for-buffer-backed-texture* for details

[0] OpenGL calls the element-types of textures ’image-formats’ or sometimes ’internal-formats’. Even though the name implies they are only useful for image data we keep the name as the subject of image-formats is complicated enough without us adding more things to think about

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

texture.

Direct methods
Direct slots
Slot: backing-array
Type

%cepl.types:gpu-array-bb

Initform

(error "")

Readers

buffer-texture-backing-array.

Writers

(setf buffer-texture-backing-array).

Slot: owns-array
Type

boolean

Readers

buffer-texture-owns-array.

Writers

(setf buffer-texture-owns-array).

Structure: c-array

‘C-ARRAY‘ is a structure that represents an array in foreign memory.

CEPL keeps not only the pointer to the foreign data in this structure but also metadata that makes moving this data to (and from) the gpu or lisp much easier.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: pointer
Type

cffi-sys:foreign-pointer

Initform

(error "cepl: c-array must be created with a pointer")

Readers

c-array-pointer.

Writers

(setf c-array-pointer).

Slot: dimensions
Type

list

Initform

(error "cepl: c-array must be created with dimensions")

Readers

c-array-dimensions.

Writers

(setf c-array-dimensions).

Slot: total-size
Type

%cepl.types:c-array-index

Initform

(error "cepl: c-array must be created with total-size")

Readers

c-array-total-size.

Writers

(setf c-array-total-size).

Slot: byte-size
Package

common-lisp.

Type

%cepl.types:c-array-index

Initform

(error "cepl: c-array must be created with byte-size")

Readers

c-array-byte-size.

Writers

(setf c-array-byte-size).

Slot: element-type
Type

symbol

Initform

(error "cepl: c-array must be created with an element-type")

Readers

c-array-element-type.

Writers

(setf c-array-element-type).

Slot: sizes
Type

(simple-array %cepl.types:c-array-index (4))

Initform

(error "cepl (bug): c-array created without internal sizes")

Readers

c-array-sizes.

Writers

(setf c-array-sizes).

Slot: row-alignment
Type

(integer 1 8)

Initform

(error "cepl: c-array must be created with a row-alignment")

Readers

c-array-row-alignment.

Writers

(setf c-array-row-alignment).

Slot: struct-element-typep
Type

boolean

Readers

c-array-struct-element-typep.

Writers

(setf c-array-struct-element-typep).

Slot: element-pixel-format
Type

(or null %cepl.types:pixel-format)

Readers

c-array-element-pixel-format.

Writers

(setf c-array-element-pixel-format).

Slot: element-from-foreign
Type

(function (cffi-sys:foreign-pointer) t)

Initform

(error "cepl: c-array must be created with a from-foreign function")

Readers

c-array-element-from-foreign.

Writers

(setf c-array-element-from-foreign).

Slot: element-to-foreign
Type

(function (cffi-sys:foreign-pointer t) t)

Initform

(error "cepl: c-array must be created with a to-foreign function")

Readers

c-array-element-to-foreign.

Writers

(setf c-array-element-to-foreign).

Slot: free
Type

function

Initform

(function cffi-sys:foreign-free)

Readers

c-array-free.

Writers

(setf c-array-free).

Structure: cepl-context
Package

cepl.context.

Source

core/context/types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: id
Type

cepl.context:context-id

Initform

(error "context missing an id")

Readers

%cepl-context-id.

Writers

(setf %cepl-context-id).

Slot: gl-context
Type

(or null cepl.context:gl-context)

Readers

%cepl-context-gl-context.

Writers

(setf %cepl-context-gl-context).

Slot: requested-gl-version
Readers

%cepl-context-requested-gl-version.

Writers

(setf %cepl-context-requested-gl-version).

Slot: gl-version-float
Type

single-float

Initform

0.0

Readers

%cepl-context-gl-version-float.

Writers

(setf %cepl-context-gl-version-float).

Slot: bound-thread
Type

(or null bordeaux-threads:thread)

Readers

%cepl-context-bound-thread.

Writers

(setf %cepl-context-bound-thread).

Slot: uninitialized-resources
Type

list

Readers

%cepl-context-uninitialized-resources.

Writers

(setf %cepl-context-uninitialized-resources).

Slot: shared
Type

(array cepl.context:cepl-context (*))

Initform

(error "context must be initialized via #'make-context")

Readers

%cepl-context-shared.

Writers

(setf %cepl-context-shared).

Slot: surfaces
Type

list

Initform

(error "context must be initialized via #'make-context")

Readers

%cepl-context-surfaces.

Writers

(setf %cepl-context-surfaces).

Slot: current-program
Type

%cepl.types:gl-id

Initform

%cepl.types:+unknown-gl-id+

Readers

%cepl-context-current-program.

Writers

(setf %cepl-context-current-program).

Slot: current-tfs
Type

(or null %cepl.types:transform-feedback-stream)

Readers

%cepl-context-current-tfs.

Writers

(setf %cepl-context-current-tfs).

Slot: current-surface
Readers

%cepl-context-current-surface.

Writers

(setf %cepl-context-current-surface).

Slot: vao-binding-id
Type

%cepl.types:vao-id

Initform

%cepl.types:+unknown-gl-id+

Readers

%cepl-context-vao-binding-id.

Writers

(setf %cepl-context-vao-binding-id).

Slot: current-viewport
Type

(or null %cepl.types:viewport)

Readers

%cepl-context-current-viewport.

Writers

(setf %cepl-context-current-viewport).

Slot: default-viewport
Type

(or null %cepl.types:viewport)

Readers

%cepl-context-default-viewport.

Writers

(setf %cepl-context-default-viewport).

Slot: current-scissor-viewports
Type

(simple-array (or null %cepl.types:viewport) (32))

Initform

(make-array 32 :element-type (quote (or null %cepl.types:viewport)) :initial-element nil)

Readers

%cepl-context-current-scissor-viewports.

Writers

(setf %cepl-context-current-scissor-viewports).

Slot: default-framebuffer
Type

(or null %cepl.types:fbo)

Readers

%cepl-context-default-framebuffer.

Writers

(setf %cepl-context-default-framebuffer).

Slot: read-fbo-binding
Type

(or null %cepl.types:fbo)

Readers

%cepl-context-read-fbo-binding.

Writers

(setf %cepl-context-read-fbo-binding).

Slot: draw-fbo-binding
Type

(or null %cepl.types:fbo)

Readers

%cepl-context-draw-fbo-binding.

Writers

(setf %cepl-context-draw-fbo-binding).

Slot: current-draw-buffers-ptr
Type

cffi-sys:foreign-pointer

Initform

(cffi-sys:null-pointer)

Readers

%cepl-context-current-draw-buffers-ptr.

Writers

(setf %cepl-context-current-draw-buffers-ptr).

Slot: current-draw-buffers-len
Type

%cepl.types:c-array-index

Initform

0

Readers

%cepl-context-current-draw-buffers-len.

Writers

(setf %cepl-context-current-draw-buffers-len).

Slot: current-stencil-params-front
Type

(or null %cepl.types:stencil-params)

Readers

%cepl-context-current-stencil-params-front.

Writers

(setf %cepl-context-current-stencil-params-front).

Slot: current-stencil-params-back
Type

(or null %cepl.types:stencil-params)

Readers

%cepl-context-current-stencil-params-back.

Writers

(setf %cepl-context-current-stencil-params-back).

Slot: current-stencil-mask-front
Type

%cepl.types:stencil-mask

Initform

255

Readers

%cepl-context-current-stencil-mask-front.

Writers

(setf %cepl-context-current-stencil-mask-front).

Slot: current-stencil-mask-back
Type

%cepl.types:stencil-mask

Initform

255

Readers

%cepl-context-current-stencil-mask-back.

Writers

(setf %cepl-context-current-stencil-mask-back).

Slot: current-blend-params
Type

(or null %cepl.types:blending-params)

Readers

%cepl-context-current-blend-params.

Writers

(setf %cepl-context-current-blend-params).

Slot: fbos
Type

(simple-array %cepl.types:fbo (*))

Initform

(make-array 0 :element-type (quote %cepl.types:fbo) :initial-element %cepl.types:+null-fbo+)

Readers

%cepl-context-fbos.

Writers

(setf %cepl-context-fbos).

Slot: array-of-bound-gpu-buffers
Type

(simple-array (or %cepl.types:gpu-buffer null) (12))

Initform

(make-array 12 :element-type (quote (or %cepl.types:gpu-buffer null)) :initial-element nil)

Readers

%cepl-context-array-of-bound-gpu-buffers.

Writers

(setf %cepl-context-array-of-bound-gpu-buffers).

Slot: array-of-gpu-buffers
Type

(simple-array %cepl.types:gpu-buffer (*))

Initform

(make-array 10 :element-type (quote %cepl.types:gpu-buffer) :initial-element %cepl.types:+null-gpu-buffer+)

Readers

%cepl-context-array-of-gpu-buffers.

Writers

(setf %cepl-context-array-of-gpu-buffers).

Slot: array-of-ubo-bindings-buffer-ids
Type

(simple-array %cepl.types:gl-id (*))

Initform

(make-array 0 :element-type (quote %cepl.types:gl-id) :initial-element %cepl.types:+null-gl-id+)

Readers

%cepl-context-array-of-ubo-bindings-buffer-ids.

Writers

(setf %cepl-context-array-of-ubo-bindings-buffer-ids).

Slot: array-of-ubo-binding-ranges
Type

(simple-array (unsigned-byte 32) (*))

Initform

(make-array 0 :element-type (quote (unsigned-byte 32)) :initial-element 0)

Readers

%cepl-context-array-of-ubo-binding-ranges.

Writers

(setf %cepl-context-array-of-ubo-binding-ranges).

Slot: array-of-ssbo-bindings-buffer-ids
Type

(simple-array %cepl.types:gl-id (*))

Initform

(make-array 0 :element-type (quote %cepl.types:gl-id) :initial-element %cepl.types:+null-gl-id+)

Readers

%cepl-context-array-of-ssbo-bindings-buffer-ids.

Writers

(setf %cepl-context-array-of-ssbo-bindings-buffer-ids).

Slot: array-of-ssbo-binding-ranges
Type

(simple-array (unsigned-byte 32) (*))

Initform

(make-array 0 :element-type (quote (unsigned-byte 32)) :initial-element 0)

Readers

%cepl-context-array-of-ssbo-binding-ranges.

Writers

(setf %cepl-context-array-of-ssbo-binding-ranges).

Slot: array-of-transform-feedback-bindings-buffer-ids
Type

(simple-array %cepl.types:gl-id (*))

Initform

(make-array 0 :element-type (quote %cepl.types:gl-id) :initial-element %cepl.types:+null-gl-id+)

Readers

%cepl-context-array-of-transform-feedback-bindings-buffer-ids.

Writers

(setf %cepl-context-array-of-transform-feedback-bindings-buffer-ids).

Slot: array-of-bound-samplers
Type

(simple-array (or null %cepl.types:sampler) (*))

Initform

(make-array 0 :element-type (quote (or null %cepl.types:sampler)) :initial-element nil)

Readers

%cepl-context-array-of-bound-samplers.

Writers

(setf %cepl-context-array-of-bound-samplers).

Slot: array-of-bound-queries
Type

(simple-array (or null %cepl.types:gpu-query) (7))

Initform

(make-array 7 :element-type (quote (or null %cepl.types:gpu-query)) :initial-element nil)

Readers

%cepl-context-array-of-bound-queries.

Writers

(setf %cepl-context-array-of-bound-queries).

Slot: array-of-textures
Type

(simple-array glsl-symbols.functions:texture (*))

Initform

(make-array 0 :element-type (quote glsl-symbols.functions:texture) :initial-element %cepl.types:+null-texture+)

Readers

%cepl-context-array-of-textures.

Writers

(setf %cepl-context-array-of-textures).

Slot: depth-func
Type

(or symbol function)

Initform

:unknown

Readers

%cepl-context-depth-func.

Writers

(setf %cepl-context-depth-func).

Slot: depth-mask
Type

boolean

Readers

%cepl-context-depth-mask.

Writers

(setf %cepl-context-depth-mask).

Slot: color-masks
Type

(simple-array (simple-array boolean (4)) (*))

Initform

(make-array 0 :element-type (quote (simple-array boolean (4))))

Readers

%cepl-context-color-masks.

Writers

(setf %cepl-context-color-masks).

Slot: depth-range
Type

glsl-symbols.types:vec2

Initform

(glsl-symbols.types:vec2 0.0 1.0)

Readers

%cepl-context-depth-range.

Writers

(setf %cepl-context-depth-range).

Slot: depth-clamp
Type

boolean

Readers

%cepl-context-depth-clamp.

Writers

(setf %cepl-context-depth-clamp).

Slot: cull-face
Type

(or symbol function)

Initform

:unknown

Readers

%cepl-context-cull-face.

Writers

(setf %cepl-context-cull-face).

Slot: front-face
Type

symbol

Initform

:unknown

Readers

%cepl-context-front-face.

Writers

(setf %cepl-context-front-face).

Slot: clear-color
Type

glsl-symbols.types:vec4

Initform

(glsl-symbols.types:vec4 0.0 0.0 0.0 0.0)

Readers

%cepl-context-clear-color.

Writers

(setf %cepl-context-clear-color).

Slot: pack-alignment
Type

(integer 1 8)

Initform

4

Readers

%cepl-context-pack-alignment.

Writers

(setf %cepl-context-pack-alignment).

Slot: unpack-alignment
Type

(integer 1 8)

Initform

4

Readers

%cepl-context-unpack-alignment.

Writers

(setf %cepl-context-unpack-alignment).

Slot: max-draw-buffer-count
Type

(unsigned-byte 16)

Initform

0

Readers

%cepl-context-max-draw-buffer-count.

Writers

(setf %cepl-context-max-draw-buffer-count).

Slot: instance-count
Type

%cepl.types:c-array-index

Initform

1

Readers

%cepl-context-instance-count.

Writers

(setf %cepl-context-instance-count).

Structure: compile-context

In the ‘lambda-list‘ for a ‘gpu-function‘, glsl-stage or gpu lambda you can include the ‘&context‘ symbol which indicates that the remaining forms in the lambda-list are information about the context for the gpu-function to be compiled in.

In pipelines (either defiend by ‘defpipeline-g‘ or ‘pipeline-g‘) there is a context parameter which is a list of forms which represent information about the context for the pipeline to be compiled in.

### The Data

The ‘compile-context‘ holds a few pieces of information:

- GLSL Versions
- in the case of ‘gpu-function‘s and glsl stages this is used to specify what GLSL versions this is valid for.
- in the case of pipelines this is used to specify what version of GLSL will be used to compile this pipeline.
- Primitive
- in the case of gpu-functions and glsl-stages this is used to specify what primitive is valid. This can be used to ensure that a specific ‘gpu-function‘ or glsl-stage that works on ‘:lines‘ is never used in a ‘pipeline‘ processing ‘:triangles‘.
- in the case of pipelines this is used to specify what primitive this pipeline takes. Any ‘buffer-stream‘ passed to this pipeline will be checked to ensure it contains the correct primitive. To specify this please refer to the :primitive argument in ‘make-buffer-stream‘ or the ‘buffer-stream-primitive‘ function.
- Stage Restrictive
- Not valid for pipelines. This lets the you declare what stage the gpu-function or glsl stage is valid for.
- Static
- For all targets this tells CEPL that the function, glsl stage or
pipeline is never going to be modified again. This allows CEPL to statically define some types and also elide the code that would usually cause recompilation when a gpu-function this is used by this pipeline/stage/function is recompiled.

Most compile-context information is optional and the following defaults are used if the data is not provided:

- GLSL Versions
- gpu-function/glsl-stage: When checking for errors CEPL will allow functions/types/etc from any glsl version to be used.
- pipeline: CEPL will look at the GL version of the context to determine the most recent version of GLSL that it can used.
- Primitive
- gpu-function/glsl-stage: By default there is no restriction applied
- pipeline: By default :triangles are assumed
- Stage
- pipelines/gpu-functions: Always NIL by default
- glsl-stages: Mandatory
- Static
- Always NIL by default

### How it is specified

The context designations are:

Static:

The symbol :static can appear at most once in the context list

Versions:

0 or more of the following can appear in the context list

- :140
- :150
- :330
- :400
- :410
- :420
- :430
- :440
- :450
- :460

Stage:

At most 1 of the following:
- :vertex
- :tessellation-control
- :tessellation-evaluation
- :geometry
- :fragment
- :compute

Primitive:

At most 1 of the following can appear in the context list
- :dynamic
- :points
- :lines
- :iso-lines
- :line-loop
- :line-strip
- :lines-adjacency
- :line-strip-adjacency
- :triangles
- :triangle-fan
- :triangle-strip
- :triangles-adjacency
- :triangle-strip-adjacency
- (:patch <patch length>)

Note: :dynamic is special. It means that the pipeline will take the primitive kind from the buffer-stream being mapped over. This won’t work for with pipelines with geometry or tessellation stages, but it otherwise can be useful.

### Example

(defpipeline-g draw-sphere ((:patch 3) :440 :static)
:vertex (sphere-vert g-pnt)
:tessellation-control (sphere-tess-con (:vec3 3)) :tessellation-evaluation (sphere-tess-eval (:vec3 3))
:geometry (sphere-geom (:vec3 3) (:vec3 3))
:fragment (sphere-frag :vec3 :vec3 :vec3))

This pipeline takes 3 component patches, requires at least GLSL 440 and has declared that it will not be recompiled (and as such will not take part in live recompilation).

(defun-g saturate ((val :dvec4) &context :410 :420 :430 :440 :450 :460) (clamp val 0d0 1d0))

This gpu-function is restricted to only work on version of GLSL between
410 & 460

(def-glsl-stage frag-glsl (("color_in" :vec4) &context :330 :fragment) "void main() {
color_out = v_in.color_in;
}"
(("color_out" :vec4)))

This glsl-stage has stated it is to be used as a fragment stage as it only valid for GLSL version 330.

Package

cepl.pipelines.

Source

core/pipelines/compile-context.lisp.

Direct superclasses

structure-object.

Direct methods

make-load-form.

Direct slots
Slot: primitive
Initform

(error "bug: context without primitive")

Readers

compile-context-primitive.

Writers

(setf compile-context-primitive).

Slot: versions
Initform

(error "bug: context without versions")

Readers

compile-context-versions.

Writers

(setf compile-context-versions).

Slot: stage
Initform

(error "bug: context without stage")

Readers

compile-context-stage.

Writers

(setf compile-context-stage).

Slot: static-p
Initform

(error "bug: context without 'static' boolean")

Readers

compile-context-static-p.

Writers

(setf compile-context-static-p).

Structure: compute-space
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: size-x
Type

(unsigned-byte 32)

Initform

1

Readers

compute-space-size-x.

Writers

(setf compute-space-size-x).

Slot: size-y
Type

(unsigned-byte 32)

Initform

1

Readers

compute-space-size-y.

Writers

(setf compute-space-size-y).

Slot: size-z
Type

(unsigned-byte 32)

Initform

1

Readers

compute-space-size-z.

Writers

(setf compute-space-size-z).

Structure: elements-indirect-command
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: empty-fbo-params
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: fbo
Type

(or null %cepl.types:fbo)

Readers

%empty-fbo-params-fbo.

Writers

(setf %empty-fbo-params-fbo).

Slot: dimensions
Type

list

Readers

%empty-fbo-params-dimensions.

Writers

(setf %empty-fbo-params-dimensions).

Slot: viewport
Type

%cepl.types:viewport

Initform

(%cepl.types:%make-viewport)

Readers

%empty-fbo-params-viewport.

Writers

(setf %empty-fbo-params-viewport).

Slot: layer-count
Type

unsigned-byte

Initform

0

Readers

%empty-fbo-params-layer-count.

Writers

(setf %empty-fbo-params-layer-count).

Slot: samples
Type

unsigned-byte

Initform

0

Readers

%empty-fbo-params-samples.

Writers

(setf %empty-fbo-params-samples).

Slot: fixed-sample-locations-p
Type

boolean

Readers

%empty-fbo-params-fixed-sample-locations-p.

Writers

(setf %empty-fbo-params-fixed-sample-locations-p).

Structure: fbo

A framebuffer object (‘FBO‘) is a structure that can be rendered into.

When a FBO is rendered into the data from the pipeline is written into one or more of the ‘attachment‘s of the FBO

An FBO attachment is a slot where a texture-backed ‘gpu-array‘ can be attached. When the gpu-array is attached the data from a pipeline rendering into the fbo is written into that gpu-array.

This is the heart of how multi-pass rendering is done in OpenGL. One pipeline writes data into ‘texture‘s that are then used as inputs to another pipeline[0].

A FBO can have:
- 0 or more ’color attachments’
- 0 or 1 ’depth attachment’
- 0 or 1 ’stencil attachment’
- 0 or 1 ’depth-stencil attachment’

Let’s look at these in more detail:

**– Color Attachments –**

Color attachments can only contain gpu-arrays whose element-type can be found in the *color-renderable-formats* list.

Note that while OpenGL terminology mentions ’color’ and ’image’ a lot you are not limitted to only using textures or fbos for pictures. It is perfectly valid (and incredibly useful) to return data meaning all kinds of things other than colors.

**– Depth Attachments –**

The depth attachment (when used) can only contain a gpu-array whos element-type can be found in *depth-formats*

*Usage Tip:* Even if you don’t plan on reading from this depth_attachment, any fbo that will be rendered to should have a depth attachment.

**– Stencil Attachments (NOT SUPPORTED IN CURRENT CEPL VERSION) –**

The stencil attachment (when used) can only contain a gpu-array whos element-type can be found in *stencil-formats*

**– Depth-Stencil Attachments (NOT SUPPORTED IN CURRENT CEPL VERSION) –**

The depth-stencil attachment (when used) can only contain a gpu-array whos element-type can be found in *depth-stencil-formats*

This attachment is shorthand for ’both depth and stencil’. The gpu-array attached here becomes both the depth and stencil attachment.

**– Choosing which attachment to render into –**

Making these choices is done with the ‘with-fbo-bound‘ macro. See its docstring for further details

[0] WARNING:

It is possible to bind a texture to an FBO, bind that same texture to a shader, and then try to sample from it at the same time. You will get undefined results.

This means it may do what you want, the sampler may get old data, the sampler may get half old and half new data, or it may get garbage data. Any of these are possible outcomes.

Do Not Do This!

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: id
Type

%cepl.types:gl-id

Initform

0

Readers

%fbo-id.

Writers

(setf %fbo-id).

Slot: empty-params
Type

(or null %cepl.types:empty-fbo-params)

Readers

%fbo-empty-params.

Writers

(setf %fbo-empty-params).

Slot: color-arrays-fill-pointer
Type

%cepl.types:c-array-index

Initform

0

Readers

%fbo-color-arrays-fill-pointer.

Writers

(setf %fbo-color-arrays-fill-pointer).

Slot: color-arrays
Type

(simple-array %cepl.types:att (*))

Initform

(make-array 0 :element-type (quote %cepl.types:att) :initial-element (symbol-value (quote %cepl.types::+null-att+)))

Readers

%fbo-color-arrays.

Writers

(setf %fbo-color-arrays).

Slot: depth-array
Type

%cepl.types:att

Initform

(%cepl.types:make-att)

Readers

%fbo-depth-array.

Writers

(setf %fbo-depth-array).

Slot: stencil-array
Type

%cepl.types:att

Initform

(%cepl.types:make-att)

Readers

%fbo-stencil-array.

Writers

(setf %fbo-stencil-array).

Slot: draw-buffer-map
Initform

(error "draw-buffer array must be provided when initializing an fbo")

Readers

%fbo-draw-buffer-map.

Writers

(setf %fbo-draw-buffer-map).

Slot: clear-mask
Type

%cepl.types::clear-buffer-mask

Initform

(cffi:foreign-bitfield-value (quote cl-opengl-bindings:clearbuffermask) (quote (:color-buffer-bit)))

Readers

%fbo-clear-mask.

Writers

(setf %fbo-clear-mask).

Slot: is-default
Type

boolean

Readers

%fbo-is-default.

Writers

(setf %fbo-is-default).

Slot: attachment-count
Type

(unsigned-byte 8)

Initform

0

Readers

%fbo-attachment-count.

Writers

(setf %fbo-attachment-count).

Slot: blending-params
Type

%cepl.types:blending-params

Initform

(%cepl.types:make-blending-params :mode-rgb :func-add :mode-alpha :func-add :source-rgb :one :source-alpha :one :destination-rgb :zero :destination-alpha :zero)

Readers

%fbo-blending-params.

Writers

(setf %fbo-blending-params).

Structure: g-pc

g-pc is a CEPL gpu struct with the following slots:

position: of type vec3 with an accessor method: pos color: of type vec4 with an accessor method: col

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: g-pn

g-pn is a CEPL gpu struct with the following slots:

position: of type vec3 with an accessor method: pos normal: of type vec3 with an accessor method: norm

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: g-pnb

g-pnb is a CEPL gpu struct with the following slots:

position: of type vec3 with an accessor method: pos normal: of type vec3 with an accessor method: norm tangent: of type vec3 with an accessor method: tangent bi-tangent: of type vec3 with an accessor method: bi-tangent

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: g-pnc

g-pnc is a CEPL gpu struct with the following slots:

position: of type vec3 with an accessor method: pos normal: of type vec3 with an accessor method: norm color: of type vec4 with an accessor method: col

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: g-pncb

g-pncb is a CEPL gpu struct with the following slots:

position: of type vec3 with an accessor method: pos normal: of type vec3 with an accessor method: norm tangent: of type vec3 with an accessor method: tangent bi-tangent: of type vec3 with an accessor method: bi-tangent color: of type vec4 with an accessor method: col

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: g-pnt

g-pnt is a CEPL gpu struct with the following slots:

position: of type vec3 with an accessor method: pos normal: of type vec3 with an accessor method: norm texture: of type vec2 with an accessor method: tex

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: g-pntb

g-pntb is a CEPL gpu struct with the following slots:

position: of type vec3 with an accessor method: pos normal: of type vec3 with an accessor method: norm tangent: of type vec3 with an accessor method: tangent bi-tangent: of type vec3 with an accessor method: bi-tangent texture: of type vec2 with an accessor method: tex

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: g-pntc

g-pntc is a CEPL gpu struct with the following slots:

position: of type vec3 with an accessor method: pos normal: of type vec3 with an accessor method: norm texture: of type vec2 with an accessor method: tex color: of type vec4 with an accessor method: col

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: g-pntcb

g-pntcb is a CEPL gpu struct with the following slots:

position: of type vec3 with an accessor method: pos normal: of type vec3 with an accessor method: norm tangent: of type vec3 with an accessor method: tangent bi-tangent: of type vec3 with an accessor method: bi-tangent texture: of type vec2 with an accessor method: tex color: of type vec4 with an accessor method: col

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: g-pt

g-pt is a CEPL gpu struct with the following slots:

position: of type vec3 with an accessor method: pos texture: of type vec2 with an accessor method: tex

Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

base-gstruct-wrapper.

Direct methods
Structure: gpu-array

‘GPU-ARRAY‘ is a structure that represents an array in gpu-memory.

Depending on how the array was created it is said that the gpu-array is either ’buffer-backed’ or ’texture-backed’.

- buffer-backed: Means it was created with ‘make-gpu-array‘ or ‘make-gpu-arrays‘ The data is stored in a gpu-buffer.
- texture-backed: Means it was created along with a ‘texture‘. ‘Texture‘s are structures that contain some number of gpu-arrays.
The data is stored in ‘texture‘ memory.
See ‘texture‘ for more details.

Both have different use cases and allow different element types, however they are both an ordered block of typed data. They can have multiple dimensions and you can ‘push-g‘ and ‘pull-g‘ data to and from them.

Note for folks who are used to OpenGL:
texture-backed gpu-arrays are what opengl would normally call ’images’. This is a pretty terrible name for them as it implies they only can hold image data, or that they are 2d only. In fact ’images’ can have 1 to 3 dimensions, can have elements that are single bytes, floats, vectors of either or a large number of other types.
’image’ belies this nature and so CEPL chooses ’array’

This also matches how the GLWiki chooses to explain them:
> an image is defined as a single array of pixels of a certain
> dimensionality (1D, 2D, or 3D), with a particular size, and a specific format.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Direct slots
Slot: dimensions
Type

list

Readers

gpu-array-dimensions.

Writers

(setf gpu-array-dimensions).

Structure: gpu-array-bb
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

gpu-array.

Direct methods
Direct slots
Slot: buffer
Type

%cepl.types:gpu-buffer

Initform

(error "")

Readers

gpu-array-bb-buffer.

Writers

(setf gpu-array-bb-buffer).

Slot: access-style
Type

symbol

Initform

:static-draw

Readers

gpu-array-bb-access-style.

Writers

(setf gpu-array-bb-access-style).

Slot: element-type
Type

symbol

Readers

gpu-array-bb-element-type.

Writers

(setf gpu-array-bb-element-type).

Slot: byte-size
Package

common-lisp.

Type

%cepl.types::gbuf-byte-size

Initform

0

Readers

gpu-array-bb-byte-size.

Writers

(setf gpu-array-bb-byte-size).

Slot: element-byte-size
Type

%cepl.types::elem-byte-size

Initform

0

Readers

gpu-array-bb-element-byte-size.

Writers

(setf gpu-array-bb-element-byte-size).

Slot: offset-in-bytes-into-buffer
Type

%cepl.types::gbuf-byte-size

Initform

0

Readers

gpu-array-bb-offset-in-bytes-into-buffer.

Writers

(setf gpu-array-bb-offset-in-bytes-into-buffer).

Slot: element-pixel-format
Type

(or null %cepl.types:pixel-format)

Readers

gpu-array-bb-element-pixel-format.

Writers

(setf gpu-array-bb-element-pixel-format).

Slot: row-alignment
Type

(integer 1 8)

Initform

1

Readers

gpu-array-bb-row-alignment.

Writers

(setf gpu-array-bb-row-alignment).

Structure: gpu-array-t
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

gpu-array.

Direct methods
Direct slots
Slot: texture
Package

glsl-symbols.functions.

Type

glsl-symbols.functions:texture

Initform

(error "")

Readers

gpu-array-t-texture.

Writers

(setf gpu-array-t-texture).

Slot: texture-type
Type

symbol

Initform

(error "")

Readers

gpu-array-t-texture-type.

Writers

(setf gpu-array-t-texture-type).

Slot: level-num
Type

(unsigned-byte 16)

Initform

0

Readers

gpu-array-t-level-num.

Writers

(setf gpu-array-t-level-num).

Slot: layer-num
Type

(unsigned-byte 16)

Initform

0

Readers

gpu-array-t-layer-num.

Writers

(setf gpu-array-t-layer-num).

Slot: face-num
Type

(integer 0 5)

Initform

0

Readers

gpu-array-t-face-num.

Writers

(setf gpu-array-t-face-num).

Slot: image-format
Type

symbol

Readers

gpu-array-t-image-format.

Writers

(setf gpu-array-t-image-format).

Structure: gpu-buffer

‘gpu-buffer‘ is a struct that abstracts a OpenGL ’Buffer Object’

Along with the the ID of the GL Object itself it stores the unformatted data as an array of ‘gpu-array‘s.

Every ‘gpu-array‘ in the buffer will have an element-type of :uint8, even if this buffer was created for a ‘gpu-array‘ with a different element-type.

For example:

(make-gpu-array ’(.1 .2 .3 .4))

will make a ‘gpu-array‘ of 4 floats. However the buffer backing this ‘gpu-array‘ will contain a single array with element-type :uint8 and a length of 16.

It is not expected that users will be using ‘gpu-buffer‘s directly. Instead they are ususal interacted with via CEPL’s ‘gpu-array‘ and ubo features.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: id
Type

%cepl.types:gl-id

Initform

0

Readers

gpu-buffer-id.

Writers

(setf gpu-buffer-id).

Slot: cache-id
Type

(integer 0 13)

Initform

0

Readers

gpu-buffer-cache-id.

Writers

(setf gpu-buffer-cache-id).

Slot: arrays
Type

(array %cepl.types:gpu-array-bb (*))

Initform

(error "")

Readers

gpu-buffer-arrays.

Writers

(setf gpu-buffer-arrays).

Structure: gpu-fence
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods

free.

Direct slots
Slot: obj
Type

cffi-sys:foreign-pointer

Initform

(cffi-sys:null-pointer)

Readers

%gpu-fence-obj.

Writers

(setf %gpu-fence-obj).

Structure: gpu-query
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct slots
Slot: id
Type

%cepl.types:gl-id

Initform

(%cepl.types::gen-query-id)

Readers

gpu-query-id.

Writers

This slot is read-only.

Slot: enum
Type

(signed-byte 32)

Initform

0

Readers

gpu-query-enum.

Writers

This slot is read-only.

Slot: cache-id
Type

(integer 0 7)

Initform

7

Readers

gpu-query-cache-id.

Writers

This slot is read-only.

Structure: pixel-format

‘pixel-format‘s exist to aid the handling and conversion of types in CEPL.

OpenGL does not make it easy to understand the types involved with textures.

First there is the name of the type you would use in lisp (or C)

Then there is the image-format (sometimes called internal-format) which specifies the format on the GPU

Then there are the types and formats that must be specified when uploading or downloading data to/from a texture (or rather a texture-backed gpu-array).

CEPL’s pixel-fromat pulls together enough metadata that conversions to and from these various representations is easy.

Technically you shouldnt need to use this directly as it will be handled by CEPL however if you ever have to deal with the formats directly, this type can be a boon.

It doesnt cover every combination yet, but will in time. Anything missing is considered a bug, so please report it on Github so it can be added to the todo list.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: components
Type

symbol

Initform

(error "")

Readers

pixel-format-components.

Writers

(setf pixel-format-components).

Slot: type
Package

common-lisp.

Type

symbol

Initform

(error "")

Readers

pixel-format-type.

Writers

(setf pixel-format-type).

Slot: normalize
Package

glsl-symbols.functions.

Type

boolean

Initform

t

Readers

pixel-format-normalize.

Writers

(setf pixel-format-normalize).

Slot: sizes
Type

list

Readers

pixel-format-sizes.

Writers

(setf pixel-format-sizes).

Slot: reversed
Type

boolean

Readers

pixel-format-reversed.

Writers

(setf pixel-format-reversed).

Slot: comp-length
Type

(unsigned-byte 8)

Initform

0

Readers

pixel-format-comp-length.

Writers

(setf pixel-format-comp-length).

Structure: primitives-generated-query
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

scoped-gpu-query.

Direct slots
Slot: enum
Type

(and (signed-byte 32) (signed-byte 32))

Initform

35975

Readers

primitives-generated-query-enum.

Writers

This slot is read-only.

Slot: cache-id
Type

(and (integer 0 7) (integer 0 7))

Initform

4

Readers

primitives-generated-query-cache-id.

Writers

This slot is read-only.

Structure: render-buffer
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: id
Type

%cepl.types:gl-id

Initform

0

Readers

%render-buffer-id.

Writers

(setf %render-buffer-id).

Slot: image-format
Type

symbol

Initform

(error "bug")

Readers

%render-buffer-image-format.

Writers

(setf %render-buffer-image-format).

Slot: resolution
Type

glsl-symbols.types:vec2

Initform

(error "bug: render-buffer resolution not provided")

Readers

%render-buffer-resolution.

Writers

(setf %render-buffer-resolution).

Slot: multisample-p
Type

boolean

Readers

%render-buffer-multisample-p.

Writers

(setf %render-buffer-multisample-p).

Structure: sampler

As ‘sampler‘ is a structure which we pass to the a gpu-pipeline to specify how the pipeline should read from a particular ‘texture‘ (also known as sampling the texture).

They are created by calling ‘sample‘ on a texture. You can then modify the various parameters and the pass the sampler to a pipeline as a uniform.

Sampling Parameters cover five main aspects of how the values are read:

- Wrapping
- Filtering
- LOD
- Comparison
- Anisotropy

We will dive into these topics below.

**– Note for beginners –**

This area of GL can be incredibly confusing so don’t worry if you don’t grasp it immediately. Lots can be done without messing with these values, tackle each one when you have a usecase for it.

**– Wrapping –**

When using normalized texture coordinates we are used to thinking about our coordinate being between 0s0 and 1s0 and that value dictating where we are sampling from.

However normalized texture coordinates are not limited to values between
0s0 and 1s0. They can be any floating-point number.

When a texture coordinate is not within the 0 → 1 range, some means must be employed to decide what the color value will be.

The different approaches are as follows:

:repeat: the texture coordinate wraps around the texture. so a texture coordinate of -0.2 becomes the equivalent of 0.8.

:mirrored-repeat: the texture coordinate wraps around like a mirror.
-0.2 becomes 0.2, -1.2 becomes 0.8, etc.

:clamp-to-edge: the texture coordinate is clamped to the 0 → 1 range.

:clamp-to-border: the texture coordinate is clamped to the 0 → 1
range, but the edge texels are blended with a
constant border color.

:mirror-clamp-to-edge: (only available with OpenGL 4.4 or :arb-texture-mirror-clamp-to-edge) the texture
is clamped to the -1 → 1 range, but mirrors the negative direction with the positive. Basically,
it acts as :clamp-to-edge, except that it
takes the absolute value of the texture
coordinates before clamping.

This also applies to Rectangle Textures, except that the range at which they apply edge sampling is based on the texel width/height of the texture, not
the normalized 0 → 1 range.

This does not apply to Buffer Textures, as they must use the texelFetch sampling functions and thus cannot sample outside of the texel range of the texture.

example:

(setf (wrap texture-or-sampler)
#(:clamp-to-edge :repeat-to-edge :clamp-to-edge))

(setf (wrap texture-or-sampler) :clamp-to-edge)

**– Filtering –**

Filtering is the process of accessing a particular sample from a ‘texture‘.

There are two cases when filtering is relevant: minification and magnification.

Magnification means that the area of the fragment in texture space is smaller than a texel, and minification means that the area of the fragment in texture space is larger than a texel.

Filtering for these two cases can be set independently.

The magnification filter is controlled by the :magnify-filter texture parameter. This value can be :linear or :nearest.

If :nearest is used, then the implementation will select the texel nearest the texture coordinate; this is commonly called ’point sampling’).

If :linear is used, the implementation will perform a weighted linear blend between the nearest adjacent samples.

(setf (magnify-filter tex-or-sampler) :linear)
(setf (magnify-filter tex-or-sampler) :nearest)

The minification filter is controlled by the :texture-min-filter texture parameter. To understand these values better, it is important to discuss what the particular options are. Here is the full list:

:nearest :linear
:nearest-mipmap-nearest :nearest-mipmap-linear
:linear-mipmap-nearest :linear-mipmap-linear

When doing minification, you can choose to use mipmapping or not. Using mipmapping means selecting between multiple mipmaps based on the angle and size of the texture relative to the screen. Whether you use mipmapping or not,
you can still select between linear blending of the particular layer or nearest. And if you do use mipmapping, you can choose to either select a single mipmap to sample from, or you can sample the two adjacent mipmaps and linearly blend the resulting values to get the final result.

The OpenGL minification settings for these are as follows:

Param Setting Lin within mip-level
:nearest No
:linear Yes
:nearest-mipmap-nearest No
:linear-mipmap-nearest Yes
:nearest-mipmap-linear No
:linear-mipmap-linear Yes

Param Setting Has mipmapping
:nearest No
:linear No
:nearest-mipmap-nearest Yes
:linear-mipmap-nearest Yes
:nearest-mipmap-linear Yes
:linear-mipmap-linear Yes

Param Setting Linear between mip-levels
:nearest -
:linear -
:nearest-mipmap-nearest No
:linear-mipmap-nearest No
:nearest-mipmap-linear Yes
:linear-mipmap-linear Yes

Remembering these combinations can be annoying so CEPL provides an additional function called #’set-minify-filter see the docstring for details

examples:

(setf (minify-filter tex-or-sampler) :linear)
(setf (minify-filter tex-or-sampler) :nearest-mipmap-nearest) (setf-minify-filter tex-or-sampler :nearest :nearest)

**– LOD –**

There is a pair of sampling parameters that affect the mipmap image selection: :max-lod and :min-lod (floating-point values).

The way these work in mipmap selection is quite complicated; the specification goes into full detail about it.

example:

(setf (min-lod texture-or-sampler) value)
(setf (max-lod texture-or-sampler) value)

LOD bias:
The mipmap image selection process can be adjusted coarsely by using the :lod-bias sampling parameter. This bias will be added to the mipmap
LOD calculation (as well as added to the bias specified in one of the ‘texture‘ accessing functions in GLSL), which is used to select the image. A positive bias means that larger mipmaps will be selected even when the texture is viewed from farther away. This can cause visual aliasing, but in small quantities it can make textures a bit more sharp.

(setf (lod-bias texture-or-sampler) value)

**– Comparison –**

-WARNING-

This feature is currently unsupported until shadow samplers are more fully tested in CEPL. Use at your own risk

Depth ‘texture‘s (textures that have a depth component image format) can be sampled in one of two ways. They can be sampled as a normal texture, which simply retrieves the depth value (with filtering applied). This will return a vec4 containing a single floating-point value.

They can also be fetched in comparison mode. This means that sampling from
the texture requires a value to compare to those pulled from the texture;
this value is called the reference value. The result of the comparison
depends on the comparison function set in the texture. If the function succeeds, the resulting value is 1s0; if it fails, it is 0s0.

When linear filtering is used, the actual returned value is implementation-defined. However, the value will be on the range 0 → 1 and
will be proportional to the number of neighboring texels that pass the comparison based on the single given value.

If the texture is a normalized integer depth format, then the reference value is clamped to 0 → 1, to match the values from the texture. Otherwise, the value is not clamped.

Using this mode requires two special settings. First, the ‘sampler‘ used in GLSL must be a shadow sampler. Second, the texture used in that sampler must have activated depth comparison mode. Attempting to use a texture without comparison with a shadow sampler, or vice-versa, will result in an error upon rendering.

To set the texture to comparison mode, set the :texture-compare-mode
texture parameter to :compare-ref-to-texture. The comparison function to
use when comparing the reference to the texture is set with the :texture-compare-func texture parameter. Acceptable values are:

:never (always fails)
:always (always succeeds)
:less
:lequal
:equal,
:not-equal
:gequal
:greater

The comparison works as follows:

(funcall operator ref texture)

Where ref is the reference value given to the texture lookup function by
GLSL, and texture is the value fetched from the texture. So :LESS will be
true if the reference value is strictly less than the value pulled from the texture.

**– Anisotropy –*

The GL spec says the following

> Anisotropic filtering is an advanced filtering technique that takes
> multiple samples, blending the results together. Exactly how this is
> done is implementation-dependent, but control over the feature is
> specific: the user provides a maximum number of samples that can be
> taken of the texture during any one texture fetch. Note that this is
> the ’maximum’ number of samples; a particular texture fetch may take
> fewer samples. Hardware generally attempts to determine the best
> number of samples to take, clamped to the user-provided maximum.

To enable anisotropic filtering on creation of a sampler you can use
the ‘:anisotropy‘ keyword argument to the ‘sample‘ function. The default value is 1f0.

To set the value after creation you can use the following:

(setf (anisotropy sampler) new-value)

Where ’new-value’ must be a ‘single-float‘

To get the current anisotropic filtering setting of a sampler simply pass it to the ‘anisotropy‘ function.

In all of the above cases a value of 1f0 means no anisotropic filtering and any value higher than 1f0 counts as a use of anisotropic filtering.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: context-id
Type

%cepl.types:gl-id

Initform

0

Readers

%sampler-context-id.

Writers

(setf %sampler-context-id).

Slot: id-box
Type

%cepl.types:sampler-id-box

Initform

(%cepl.types:make-sampler-id-box)

Readers

%sampler-id-box.

Writers

(setf %sampler-id-box).

Slot: type
Package

common-lisp.

Type

symbol

Initform

(error "")

Readers

%sampler-type.

Writers

(setf %sampler-type).

Slot: texture
Package

glsl-symbols.functions.

Type

glsl-symbols.functions:texture

Initform

(error "")

Readers

%sampler-texture.

Writers

(setf %sampler-texture).

Slot: lod-bias
Type

single-float

Initform

0.0

Readers

%sampler-lod-bias.

Writers

(setf %sampler-lod-bias).

Slot: min-lod
Type

single-float

Initform

-1000.0

Readers

%sampler-min-lod.

Writers

(setf %sampler-min-lod).

Slot: max-lod
Type

single-float

Initform

1000.0

Readers

%sampler-max-lod.

Writers

(setf %sampler-max-lod).

Slot: border-color
Type

glsl-symbols.types:vec4

Initform

(glsl-symbols.types:vec4 0.0 0.0 0.0 0.0)

Readers

%sampler-border-color.

Writers

(setf %sampler-border-color).

Slot: expects-mipmap
Type

boolean

Readers

%sampler-expects-mipmap.

Writers

(setf %sampler-expects-mipmap).

Slot: minify-filter
Type

keyword

Initform

:linear

Readers

%sampler-minify-filter.

Writers

(setf %sampler-minify-filter).

Slot: magnify-filter
Type

keyword

Initform

:linear

Readers

%sampler-magnify-filter.

Writers

(setf %sampler-magnify-filter).

Slot: wrap
Type

vector

Initform

#(:repeat :repeat :repeat)

Readers

%sampler-wrap.

Writers

(setf %sampler-wrap).

Slot: expects-depth
Type

boolean

Readers

%sampler-expects-depth.

Writers

(setf %sampler-expects-depth).

Slot: compare
Type

symbol

Readers

%sampler-compare.

Writers

(setf %sampler-compare).

Slot: anisotropy
Type

single-float

Initform

1.0

Readers

%sampler-anisotropy.

Writers

(setf %sampler-anisotropy).

Structure: sampler-id-box
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: id
Type

(signed-byte 32)

Initform

-1

Readers

sampler-id-box-id.

Writers

(setf sampler-id-box-id).

Slot: shared-p
Type

boolean

Readers

sampler-id-box-shared-p.

Writers

(setf sampler-id-box-shared-p).

Structure: samples-passed-query
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

scoped-gpu-query.

Direct slots
Slot: enum
Type

(and (signed-byte 32) (signed-byte 32))

Initform

35092

Readers

samples-passed-query-enum.

Writers

This slot is read-only.

Slot: cache-id
Type

(and (integer 0 7) (integer 0 7))

Initform

1

Readers

samples-passed-query-cache-id.

Writers

This slot is read-only.

Structure: scoped-gpu-query
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

gpu-query.

Direct subclasses
Direct slots
Slot: active-p
Type

boolean

Readers

scoped-gpu-query-active-p.

Writers

(setf scoped-gpu-query-active-p).

Structure: ssbo

‘SSBO‘ is a structure that abstracts an OpenGL Shader Storage Buffer Object

An SSBO is chunk of data stored in a ‘gpu-buffer‘, which can be used in shader pipelines. They are very similar to UBOs and are used in pretty much the same way. The big differences between them are:

- SSBOs can be much larger. The OpenGL spec guarantees that UBOs can
be up to 16KB in size (implementations can allow them to be
bigger). The spec guarantees that SSBOs can be up to 128MB. Most implementations will let you allocate a size up to the limit of GPU memory.

- SSBOs are writable (even atomically) whereas UBOs are not.
Be aware that SSBOs reads and writes use incoherent memory accesses,
so they need the appropriate barriers.

- SSBO access, all things being equal, will likely be slower than UBO access. SSBOs generally are accesses like buffer textures, while UBO data is accessed through internal shader-accessible memory reads. At
the very least, UBOs will be no slower than SSBOs.

- *Not yet supported in CEPL*
SSBOs can have variable storage, up to whatever buffer range was
bound for that particular buffer; UBOs must have a specific, fixed storage size. This means that you can have an array of arbitrary
length in an SSBO (at the end, rather). The actual size of the
array, based on the range of the buffer bound, can be queried at
runtime in the shader using the length function on the unbounded
array variable.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: id
Type

%cepl.types:gl-id

Initform

0

Readers

ssbo-id.

Writers

(setf ssbo-id).

Slot: data
Type

%cepl.types:gpu-array-bb

Initform

(error "gpu-array must be provided when making ssbo")

Readers

ssbo-data.

Writers

(setf ssbo-data).

Slot: index
Type

%cepl.types:c-array-index

Initform

0

Readers

ssbo-index.

Writers

(setf ssbo-index).

Slot: owns-gpu-array
Type

boolean

Readers

ssbo-owns-gpu-array.

Writers

(setf ssbo-owns-gpu-array).

Structure: stencil-params
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods

print-object.

Direct slots
Slot: test
Type

(signed-byte 32)

Initform

512

Readers

%stencil-params-test.

Writers

This slot is read-only.

Slot: value
Type

%cepl.types:stencil-mask

Initform

0

Readers

%stencil-params-value.

Writers

This slot is read-only.

Slot: mask
Type

%cepl.types:stencil-mask

Initform

0

Readers

%stencil-params-mask.

Writers

This slot is read-only.

Slot: on-stencil-test-fail
Type

(signed-byte 32)

Initform

7680

Readers

%stencil-params-on-stencil-test-fail.

Writers

This slot is read-only.

Slot: on-stencil-pass-depth-test-fail
Type

(signed-byte 32)

Initform

7680

Readers

%stencil-params-on-stencil-pass-depth-test-fail.

Writers

This slot is read-only.

Slot: on-stencil-pass-depth-test-pass
Type

(signed-byte 32)

Initform

7680

Readers

%stencil-params-on-stencil-pass-depth-test-pass.

Writers

This slot is read-only.

Structure: texture

‘Texture‘s are structures that hold a number of ‘gpu-array‘s that all have the same
element-type.

Textures can be used as a source of data or can be attached to an fbo, which
means you can render into them instead of to the screen[0].

These texture-backed arrays cannot contain arbitrary data, they are specific
formats that are allowed in specific circumstances. CEPL makes working with
these as smooth as possible, but the details are confusing and the best sources
of information for the nitty-gritty are the GL-Wiki and the GL-Specification.

**– Texture Types –**

The textures themselves have a number of configurations (known from here on as
’texture-types’) that are allowed:

:texture-1d
Gpu-Arrays in this texture all are 1-dimensional.

:texture-2d
Gpu-Arrays in this texture all are 2-dimensional.

:texture-3d
Gpu-Arrays in this texture all are 3-dimensional.

:texture-rectangle
This texture only has one 2-dimensional gpu-array. The texture cannot have
mipmapping. Texture coordinates used for these textures are not normalized.

:texture-buffer
See the documentation for ‘buffer-texture‘ for details

:texture-cube-map
There are exactly 6 distinct sets of 2D gpu-arrays, all of the same size.
They act as 6 faces of a cube.

:texture-1d-array
Gpu-Arrays in this texture all are 1-dimensional. However, it contains
multiple sets of 1-dimensional gpu-arrays, all within one texture.

:texture-2d-array
Gpu-Arrays in this texture all are 2-dimensional. However, it contains
multiple sets of 2-dimensional gpu-arrays, all within one texture.

:texture-cube-map-array
Gpu-Arrays in this texture are all cube maps. It contains multiple sets of
cube maps, all within one texture.

:texture-2d-multisample & :texture-2d-multisample-array
Not currently supported in CEPL

**– Element Types –**

Unlike ‘c-array‘ and ‘gpu-array‘s (which use foreign types for their elements)
textures have a different set of acceptable format. These are called
’image formats’.

The name may imply that these formats are only usable for image data but this
is not the case. Most of the types we are used to are there, but under unsual
names.

This would make this a ripe candidate for CEPL to clean up the naming.. but it
doesnt, why?

Well the answer to that is image-formats are damn confusing and if we change
too much of the naming it will be even more confusing when trying to google
information. Instead CEPL provides a number of functions for converting
between (foreign) lisp types and their image-format counterparts.

**– Mip Maps –**

When a texture is applied to a surface, the number of the texture’s
pixels (commonly called ’texels’) that are used depends on the angle at which
that surface is rendered. For example if we were rendering a TV then when it is
almost side on we will use much less pixels that if we were rendering it from
the front. At that point the gpu has to pick which texels from the texture to
use.
When an object is moving (or the camera is) the texels that are chosen to be
drawn each frame will not be the same, this causes nasty visual artifacts.

To get around this, gpus employ mip maps. These are pre-shrunk versions of the
full-sized ‘gpu-array‘. Each mipmap is half the size of the previous one in the
chain. So a 64x16 2D texture can have 6 mip-maps: 32x8, 16x4, 8x2, 4x1,
2x1, and 1x1.

OpenGL does not require that the entire mipmap chain is complete; you can
specify what range of mipmaps in a texture are available.

Some texture types have multiple independent sets of mipmaps. Each face of a
cubemap has its own set of mipmaps, as does each entry in an array texture.

When sampling a texture (see below), the implementation will automatically
select which mipmap to use based on the viewing angle, size of texture,
and various other factors.

**– Mutable or Immutable Storage –**

First we will explain what this is not, this is not about whether you can change
the contents of the ‘gpu-array‘s after the texture is created. It is about whether
you can redefine the ’nature’ of the data stored in the gpu-arrays after they
are created, by that we mean things like the type of the data, the resolution of
the gpu-arrays.

It is hard to do without creating an ’incomplete’ texture [1] and so CEPL opts
to treat all textures as immutable textures. When the OpenGL version doesnt
support immutable texture storage CEPL makes uses immutable storage,
allocates all the memory at construction, and doesnt provide abstractions over
the opengl features that would modify the storage.

**– Sampling –**

Sampling is the process of fetching a value from a texture at a given position.
It is interesting as, because of things like mipmaping, the usual case is that
reading a single value from a texture involves reading from more than one of
its gpu-arrays and combining the resultson some fashion.

To control this process GL (and thus CEPL) have a special object called a
sampler. Samplers have a number of values that can be tweaked that affect how
the sampling is done.

To find out more see the cepl.samplers section.

[0] - more correctly the default-fbo

[1] - [glwiki: texture completeness](https://www.opengl.org/wiki/Immutable_Storage_Texture#Texture_completeness)

Package

glsl-symbols.functions.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct subclasses

buffer-texture.

Direct methods
Direct slots
Slot: id
Package

%cepl.types.

Type

%cepl.types:gl-id

Initform

0

Readers

texture-id.

Writers

(setf texture-id).

Slot: cache-id
Package

%cepl.types.

Type

(signed-byte 32)

Initform

0

Readers

texture-cache-id.

Writers

(setf texture-cache-id).

Slot: base-dimensions
Package

%cepl.types.

Type

list

Readers

texture-base-dimensions.

Writers

(setf texture-base-dimensions).

Slot: type
Package

common-lisp.

Type

symbol

Initform

(error "")

Readers

texture-type.

Writers

(setf texture-type).

Slot: image-format
Package

%cepl.types.

Type

symbol

Initform

(error "")

Readers

texture-image-format.

Writers

(setf texture-image-format).

Slot: mipmap-levels
Package

%cepl.types.

Type

(unsigned-byte 16)

Initform

0

Readers

texture-mipmap-levels.

Writers

(setf texture-mipmap-levels).

Slot: layer-count
Package

%cepl.types.

Type

(unsigned-byte 16)

Initform

0

Readers

texture-layer-count.

Writers

(setf texture-layer-count).

Slot: cubes-p
Package

%cepl.types.

Type

boolean

Readers

texture-cubes-p.

Writers

(setf texture-cubes-p).

Slot: allocated-p
Package

%cepl.types.

Type

boolean

Readers

texture-allocated-p.

Writers

(setf texture-allocated-p).

Slot: mutable-p
Package

%cepl.types.

Type

boolean

Readers

texture-mutable-p.

Writers

(setf texture-mutable-p).

Slot: samples
Package

%cepl.types.

Type

(unsigned-byte 32)

Initform

0

Readers

texture-samples.

Writers

(setf texture-samples).

Slot: fixed-sample-locations-p
Package

%cepl.types.

Type

boolean

Readers

texture-fixed-sample-locations-p.

Writers

(setf texture-fixed-sample-locations-p).

Slot: last-sampler-id
Package

%cepl.types.

Type

(signed-byte 32)

Initform

0

Readers

texture-last-sampler-id.

Writers

(setf texture-last-sampler-id).

Structure: time-elapsed-query
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

scoped-gpu-query.

Direct slots
Slot: enum
Type

(and (signed-byte 32) (signed-byte 32))

Initform

35007

Readers

time-elapsed-query-enum.

Writers

This slot is read-only.

Slot: cache-id
Type

(and (integer 0 7) (integer 0 7))

Initform

6

Readers

time-elapsed-query-cache-id.

Writers

This slot is read-only.

Structure: timestamp-query
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

gpu-query.

Direct slots
Slot: enum
Type

(and (signed-byte 32) (signed-byte 32))

Initform

36392

Readers

timestamp-query-enum.

Writers

This slot is read-only.

Slot: cache-id
Type

(and (integer 0 7) (integer 0 7))

Initform

0

Readers

timestamp-query-cache-id.

Writers

This slot is read-only.

Structure: transform-feedback-primitives-written-query
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

scoped-gpu-query.

Direct slots
Slot: enum
Type

(and (signed-byte 32) (signed-byte 32))

Initform

35976

Readers

transform-feedback-primitives-written-query-enum.

Writers

This slot is read-only.

Slot: cache-id
Type

(and (integer 0 7) (integer 0 7))

Initform

5

Readers

transform-feedback-primitives-written-query-cache-id.

Writers

This slot is read-only.

Structure: transform-feedback-stream
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: arrays
Type

(or null (simple-array %cepl.types:gpu-array-bb (*)))

Readers

%tfs-arrays.

Writers

(setf %tfs-arrays).

Slot: pending-arrays
Type

(or null (simple-array %cepl.types:gpu-array-bb (*)))

Readers

%tfs-pending-arrays.

Writers

(setf %tfs-pending-arrays).

Slot: bound
Type

boolean

Readers

%tfs-bound.

Writers

(setf %tfs-bound).

Slot: current-prog-id
Type

%cepl.types:gl-id

Initform

%cepl.types:+unknown-gl-id+

Readers

%tfs-current-prog-id.

Writers

(setf %tfs-current-prog-id).

Structure: ubo

A ‘UBO‘ is a structure that abstracts an OpenGL Uniform Buffer Object

A Ubo is chunk of data stored in a ‘gpu-buffer‘, which can be used as a uniform in shader pipelines.

The advantage of using a UBO over just passing the data as regular unforms is that UBOs can be used to share uniforms between different programs, as well as quickly change between sets of uniforms for the same pipeline.

Let’s expand on that a little:

Switching between uniform buffer bindings is typically faster than switching dozens of uniforms in a pipeline.

Also, uniform buffer objects can typically store more data than non-buffered uniforms. So they can be used to store and access larger blocks of data than unbuffered uniform values.

Lastly, they can be used to share information between different programs.
So modifying a single buffer can effectively allow uniforms in multiple programs to be updated.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: id
Type

%cepl.types:gl-id

Initform

0

Readers

ubo-id.

Writers

(setf ubo-id).

Slot: data
Type

%cepl.types:gpu-array-bb

Initform

(error "gpu-array must be provided when making ubo")

Readers

ubo-data.

Writers

(setf ubo-data).

Slot: index
Type

%cepl.types:c-array-index

Initform

0

Readers

ubo-index.

Writers

(setf ubo-index).

Slot: owns-gpu-array
Type

boolean

Readers

ubo-owns-gpu-array.

Writers

(setf ubo-owns-gpu-array).

Structure: viewport

‘Viewport‘ is a structure that represents a retangular region of the surface that CEPL can draw into.

There is always a viewport current when rendering. If one of your own is not current then CEPL will use its default viewport, the resolution of which is the same as that of the surface when it was created.

The default viewport can be modified, so feel free to update the resolution if the surface size changes.

Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Direct superclasses

structure-object.

Direct methods
Direct slots
Slot: resolution-x
Type

(unsigned-byte 16)

Initform

320

Readers

%viewport-resolution-x.

Writers

(setf %viewport-resolution-x).

Slot: resolution-y
Type

(unsigned-byte 16)

Initform

240

Readers

%viewport-resolution-y.

Writers

(setf %viewport-resolution-y).

Slot: origin-x
Type

(unsigned-byte 16)

Initform

0

Readers

%viewport-origin-x.

Writers

(setf %viewport-origin-x).

Slot: origin-y
Type

(unsigned-byte 16)

Initform

0

Readers

%viewport-origin-y.

Writers

(setf %viewport-origin-y).


5.1.10 Classes

Class: api-1
Package

cepl.host.

Source

host/api-1.lisp.

Direct superclasses

cepl-host-api.

Direct subclasses

api-2.

Direct methods
Direct slots
Slot: supports-multiple-contexts-p
Slot: supports-multiple-surfaces-p
Slot: init-function
Slot: shutdown-function
Slot: make-surface-function
Slot: destroy-surface-function
Slot: make-context-function
Slot: step-function
Slot: swap-function
Slot: register-event-callback-function
Slot: make-context-current-function
Slot: surface-size-function
Slot: set-surface-size-function
Slot: surface-fullscreen-p-function
Slot: set-surface-fullscreen-function
Slot: surface-title-function
Slot: set-surface-title-function
Class: api-2
Package

cepl.host.

Source

host/api-2.lisp.

Direct superclasses

api-1.

Direct methods
Direct slots
Slot: make-gl-context-shared-with-current-context-function
Class: gl-context
Package

cepl.context.

Source

core/context/gl-context.lisp.

Direct methods
Direct slots
Slot: handle
Initargs

:handle

Readers

handle.

Writers

This slot is read-only.

Slot: version-major
Initargs

:version-major

Readers

major-version.

Writers

This slot is read-only.

Slot: version-minor
Initargs

:version-minor

Readers

minor-version.

Writers

This slot is read-only.

Slot: version-float
Initargs

:version-float

Readers

version-float.

Writers

This slot is read-only.

Class: std-140
Package

%cepl.types.

Source

core/types/layout.lisp.

Direct superclasses

gl-layout.

Class: std-430
Package

%cepl.types.

Source

core/types/layout.lisp.

Direct superclasses

gl-layout.


5.1.11 Types

Type: array-index ()
Package

cepl-utils.

Source

core/utils.lisp.

Type: attachment-name ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: attachment-num ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: c-array-index ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: context-id ()
Package

cepl.context.

Source

core/context/types.lisp.

Type: extended-attachment-num ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: gl-enum-value ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: gl-id ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: gl-sizei ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: stencil-mask ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: tex-unit ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: uploadable-lisp-seq ()
Package

cepl.internals.

Source

core/internals.lisp.

Type: vao-id ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.


5.2 Internals


5.2.1 Constants

Constant: +cpu->gpu-vec-mappings+
Package

cepl.types.

Source

core/types/structs.lisp.

Constant: +cube-face-order+
Package

cepl.textures.

Source

core/textures/textures.lisp.

Constant: +cube-face-order-enums+
Package

cepl.textures.

Source

core/textures/textures.lisp.

Constant: +gl-color-mask-bit-size+
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Constant: +gl-enum-size+
Package

cepl-utils.

Source

core/early.lisp.

Constant: +gl-integral-pixel-types+
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Constant: +gl-pixel-to-internal-map+
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Constant: +lifecycle-states+
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Constant: +possible-texture-keys+
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Constant: +sampler-types+
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Constant: +unknown-clear-mask+
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Constant: +unknown-uniform-int-id+
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Constant: +unknown-uniform-uint-id+
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Constant: +valid-fbo-targets+
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Constant: +valid-pixel-components+
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Constant: +valid-pixel-packed-sizes+
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Constant: +valid-pixel-types+
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Constant: +valid-stencil-tests+
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Constant: +valid-texture-storage-options+
Package

cepl.textures.

Source

core/textures/textures.lisp.

Constant: +valid-texture-subset+
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.


5.2.2 Special variables

Special Variable: *active-listeners*
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Special Variable: *anisotropy-available*
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Special Variable: *api-0-context-singleton*
Package

cepl.host.

Source

host/api-0.lisp.

Special Variable: *api-0-make-context-called*
Package

cepl.host.

Source

host/api-0.lisp.

Special Variable: *api-0-make-window-called*
Package

cepl.host.

Source

host/api-0.lisp.

Special Variable: *api-0-window-singleton*
Package

cepl.host.

Source

host/api-0.lisp.

Special Variable: *cache-last-compile-result*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *cepl-context*
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Special Variable: *cepl-release-mode*
Package

cepl.build.

Source

build/build.lisp.

Special Variable: *contexts*
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Special Variable: *contexts-lock*
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Special Variable: *current-host*
Package

cepl.host.

Source

host/api-api.lisp.

Special Variable: *declared-host*
Package

cepl.host.

Source

host/api-api.lisp.

Special Variable: *default-sampler-id-box*
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Special Variable: *dependent-gpu-functions*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *dependent-gpu-functions-lock*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *fake-sampler-id*
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Special Variable: *fake-sampler-id-lock*
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Special Variable: *free-context-ids*
Package

cepl.context.

Source

core/context/types.lisp.

Special Variable: *free-context-ids-lock*
Package

cepl.context.

Source

core/context/types.lisp.

Special Variable: *freed-ssbo-id*
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Special Variable: *freed-ubo-id*
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Special Variable: *get-gpu-lambda-state*
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Special Variable: *gpu-func-diff-tag*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *gpu-func-specs*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *gpu-func-specs-lock*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *gpu-pipeline-specs*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *gpu-pipeline-specs-lock*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *init-pipeline-lock*
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Special Variable: *lifecycle-state*
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Special Variable: *lowest-unused-ssbo-id*
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Special Variable: *lowest-unused-ubo-id*
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Special Variable: *map-of-pipeline-names-to-gl-ids*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *map-of-pipeline-names-to-gl-ids-lock*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *pipeline-body-context-var*
Package

cepl.pipelines.

Source

core/pipelines/mapg-context.lisp.

Special Variable: *post-context-init*
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Special Variable: *primary-context*
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Special Variable: *print-gpu-function-subscriptions*
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Special Variable: *samplers-available*
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Special Variable: *shutting-down-listeners*
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Special Variable: *ssbo-id-lock*
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Special Variable: *standard-declarations*
Package

cepl.defn.

Source

defn/defn.lisp.

Special Variable: *struct-slot-defs*
Package

cepl.types.

Source

core/types/structs.lisp.

Special Variable: *suppress-upload-message*
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Special Variable: *suspended-listeners*
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Special Variable: *template-dir*
Package

cepl.

Source

project.lisp.

Special Variable: *ubo-id-lock*
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Special Variable: *valid-layout-specifiers*
Package

%cepl.types.

Source

core/types/layout.lisp.

Special Variable: *warn-when-cant-test-compile*
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Special Variable: +null-att+
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.

Special Variable: +uninitialized-buffer-array+
Package

%cepl.types.

Source

core/types/nulls-and-uninitialized.lisp.


5.2.3 Macros

Macro: %with-blending (fbo pattern explicit-blend-params &body body)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Macro: %with-cepl-context-slots (slots context &body body)
Package

cepl.context.

Source

core/context/types.lisp.

Macro: %with-scratch-texture-bound (texture &body body)
Package

cepl.textures.

Source

core/textures/def.lisp.

Macro: ---block-doc--- (doc-string &body body)
Package

cepl-utils.

Source

core/utils.lisp.

Macro: define-context-func (name args ret-type context-slots &body body)

This simple encodes a pattern I was writing too many times.
Basically we want to have the call to #’cepl-context inline
at the callsite as then a surrounding with-cepl-context block
will be able to replace it with a local version (improving performance) the way we have taken to doing this

Package

cepl.context.

Source

core/context/cepl-context.lisp.

Macro: if-gl-context (init-func-call pre-context-form &optional depends-on)
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Macro: l-identity (context)

An identity macro. Exists so it can be shadowed in certain contexts

Package

cepl.context.

Source

core/context/cepl-context.lisp.

Macro: make-typed-from-foreign ()
Package

cepl.types.

Source

core/types/cffi-helpers.lisp.

Macro: map-g-into* ((fbo &key with-viewport attachment-for-size with-blending) pipeline-func stream &rest uniforms)

The ‘map-g-into*‘ macro is a variant of ‘map-g-into‘ which differs in that you have more control over how the ‘fbo‘ is bound.

Like map-g-into, map-g-into* maps a ‘buffer-stream‘ over our pipeline and the results of the pipeline are fed into the supplied fbo.

This is how we run our pipelines and thus is how we render in CEPL.

The arguments to map-g-into* are going to depend on what gpu-functions were composed in the pipeline you are calling. However the layout is always as follows.

- fbo: This is where the results of the pipeline will be written.

- with-viewport: If with-viewport is t then ‘with-fbo-bound‘ adds a ‘with-fbo-viewport‘ that uses this fbo to this scope. This means that the ‘current-viewport‘ within this scope will be set to the equivalent of:

(make-viewport dimensions-of-fbo ’(0 0))

See the docstruct with-fbo-viewport for details on this behavior.

One last detail is that you may want to take the ‘dimensions‘ of the ‘viewport‘ from an attachment other than attachment-0.
To do this use the ’attachment-for-size argument and give the index of the color-attachment to use.

- with-blending: If with-blending is t then with-fbo-bound adds a with-blending that uses this fbo to this scope.
This means that the blending parameters from your fbo will be used while rendering. For the details and version specific behaviours check out the docstring for with-blending

- attachment-for-size: see above

- the pipeline function: The first argument is always the pipeline you wish to map the data over.

- The stream: The next argument will be the buffer-stream which will be used as the inputs to the vertex-shader of the pipeline. The type of the buffer-stream must be mappable onto types of the non uniform args of the gpu-function being used as the vertex-shader.

- Uniform args: Next you must provide the uniform arguments. These are passed in the same fashion as regular &key arguments.

CEPL will then run the pipeline with the given args and the results will be fed into the specified FBO. The value/s from the fragment shader will be
written into the attachments of the FBO. If you need to control this in the fashion usualy provided by with-fbo-bound then please see the doc-string for ‘map-g-into*‘.

The default behaviour is that each of the multiple returns values from the gpu-function used as the fragment shader will be written into the respective attachments of the ‘FBO‘ (first value to first attachment, second value to second attachment, etc)

Internally map-g-into* wraps call to ‘map-g‘ in with-fbo-bound. The with-fbo-bound has its default configuration which means that:

Package

cepl.pipelines.

Source

core/pipelines/map-g.lisp.

Macro: with-blending-param-slots (blending-params &body body)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Macro: with-buffer-range-mapped ((p target offset length access) &body body)
Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Macro: with-fbo-slots (attachment-bindings expression &body body)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Macro: with-glsl-stage-spec (glsl-stage-spec &body body)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Macro: with-gpu-array-t (gpu-array-t &body body)
Package

cepl.textures.

Source

core/textures/def.lisp.

Macro: with-gpu-func-spec (func-spec &body body)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.


5.2.4 Compiler macros

Compiler Macro: current-blend-params (&optional cepl-context)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Compiler Macro: force-depth-test-function (function &optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Compiler Macro: get-gl-attachment-enum (ctx fbo x)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Compiler Macro: set-current-blend-params (params &optional cepl-context)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Compiler Macro: set-current-blend-params-from-fbo (fbo &optional cepl-context)
Package

cepl.blending.

Source

core/blending/blending.lisp.


5.2.5 Ordinary functions

Function: %across-c-1d (func arr)
Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: %across-c-2d (func arr)
Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: %across-c-3d (func arr)
Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: %across-c-4d (func arr)
Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: %across-c-ptr-1d (func arr)
Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: %across-c-ptr-2d (func arr)
Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: %across-c-ptr-3d (func arr)
Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: %across-c-ptr-4d (func arr)
Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: %api-0-populate-singletons (&key width height title fullscreen no-frame alpha-size depth-size stencil-size red-size green-size blue-size buffer-size double-buffer hidden resizable gl-version &allow-other-keys)
Package

cepl.host.

Source

host/api-0.lisp.

Function: %apply-stencil-mask (face mask cepl-context)
Package

cepl.context.

Source

core/stencil/mask.lisp.

Function: %apply-stencil-params (face params cepl-context)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: %attachment (fbo attachment-name)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: (setf %attachment) (fbo attachment-name)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %bind-fbo (fbo target)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %bind-ssbo (ssbo)
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Function: %bind-tfs-arrays (ctx tfs)
Package

cepl.transform-feedback.

Source

core/transform-feedback/transform-feedback.lisp.

Function: %bind-ubo (ubo)
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Function: %blend-fbo (fbo)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: %blend-i (params i)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: %blend-using-params (params)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: %calc-image-format-with-declared-format (element-type image-format initial-contents)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: %calc-image-format-with-lisp-type (element-type initial-contents)

Convert the lisp type to an internal format and delegate to %calc-image-format

Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: %calc-image-format-with-pixel-format (pixel-format initial-contents)

Convert the pixel-format to an internal format and delegate to %calc-image-format

Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: %calc-image-format-without-declared-format (initial-contents)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Reader: %cepl-context-array-of-bound-gpu-buffers (instance)
Writer: (setf %cepl-context-array-of-bound-gpu-buffers) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

array-of-bound-gpu-buffers.

Reader: %cepl-context-array-of-bound-queries (instance)
Writer: (setf %cepl-context-array-of-bound-queries) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

array-of-bound-queries.

Reader: %cepl-context-array-of-bound-samplers (instance)
Writer: (setf %cepl-context-array-of-bound-samplers) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

array-of-bound-samplers.

Reader: %cepl-context-array-of-gpu-buffers (instance)
Writer: (setf %cepl-context-array-of-gpu-buffers) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

array-of-gpu-buffers.

Reader: %cepl-context-array-of-ssbo-binding-ranges (instance)
Writer: (setf %cepl-context-array-of-ssbo-binding-ranges) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

array-of-ssbo-binding-ranges.

Reader: %cepl-context-array-of-ssbo-bindings-buffer-ids (instance)
Writer: (setf %cepl-context-array-of-ssbo-bindings-buffer-ids) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

array-of-ssbo-bindings-buffer-ids.

Reader: %cepl-context-array-of-textures (instance)
Writer: (setf %cepl-context-array-of-textures) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

array-of-textures.

Reader: %cepl-context-array-of-transform-feedback-bindings-buffer-ids (instance)
Writer: (setf %cepl-context-array-of-transform-feedback-bindings-buffer-ids) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

array-of-transform-feedback-bindings-buffer-ids.

Reader: %cepl-context-array-of-ubo-binding-ranges (instance)
Writer: (setf %cepl-context-array-of-ubo-binding-ranges) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

array-of-ubo-binding-ranges.

Reader: %cepl-context-array-of-ubo-bindings-buffer-ids (instance)
Writer: (setf %cepl-context-array-of-ubo-bindings-buffer-ids) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

array-of-ubo-bindings-buffer-ids.

Reader: %cepl-context-bound-thread (instance)
Writer: (setf %cepl-context-bound-thread) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

bound-thread.

Reader: %cepl-context-clear-color (instance)
Writer: (setf %cepl-context-clear-color) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

clear-color.

Reader: %cepl-context-color-masks (instance)
Writer: (setf %cepl-context-color-masks) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

color-masks.

Reader: %cepl-context-cull-face (instance)
Writer: (setf %cepl-context-cull-face) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

cull-face.

Reader: %cepl-context-current-blend-params (instance)
Writer: (setf %cepl-context-current-blend-params) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-blend-params.

Reader: %cepl-context-current-draw-buffers-len (instance)
Writer: (setf %cepl-context-current-draw-buffers-len) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-draw-buffers-len.

Reader: %cepl-context-current-draw-buffers-ptr (instance)
Writer: (setf %cepl-context-current-draw-buffers-ptr) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-draw-buffers-ptr.

Reader: %cepl-context-current-program (instance)
Writer: (setf %cepl-context-current-program) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-program.

Reader: %cepl-context-current-scissor-viewports (instance)
Writer: (setf %cepl-context-current-scissor-viewports) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-scissor-viewports.

Reader: %cepl-context-current-stencil-mask-back (instance)
Writer: (setf %cepl-context-current-stencil-mask-back) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-stencil-mask-back.

Reader: %cepl-context-current-stencil-mask-front (instance)
Writer: (setf %cepl-context-current-stencil-mask-front) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-stencil-mask-front.

Reader: %cepl-context-current-stencil-params-back (instance)
Writer: (setf %cepl-context-current-stencil-params-back) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-stencil-params-back.

Reader: %cepl-context-current-stencil-params-front (instance)
Writer: (setf %cepl-context-current-stencil-params-front) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-stencil-params-front.

Reader: %cepl-context-current-surface (instance)
Writer: (setf %cepl-context-current-surface) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-surface.

Reader: %cepl-context-current-tfs (instance)
Writer: (setf %cepl-context-current-tfs) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-tfs.

Reader: %cepl-context-current-viewport (instance)
Writer: (setf %cepl-context-current-viewport) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

current-viewport.

Reader: %cepl-context-default-framebuffer (instance)
Writer: (setf %cepl-context-default-framebuffer) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

default-framebuffer.

Reader: %cepl-context-default-viewport (instance)
Writer: (setf %cepl-context-default-viewport) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

default-viewport.

Reader: %cepl-context-depth-clamp (instance)
Writer: (setf %cepl-context-depth-clamp) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

depth-clamp.

Reader: %cepl-context-depth-func (instance)
Writer: (setf %cepl-context-depth-func) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

depth-func.

Reader: %cepl-context-depth-mask (instance)
Writer: (setf %cepl-context-depth-mask) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

depth-mask.

Reader: %cepl-context-depth-range (instance)
Writer: (setf %cepl-context-depth-range) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

depth-range.

Reader: %cepl-context-draw-fbo-binding (instance)
Writer: (setf %cepl-context-draw-fbo-binding) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

draw-fbo-binding.

Reader: %cepl-context-fbos (instance)
Writer: (setf %cepl-context-fbos) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

fbos.

Reader: %cepl-context-front-face (instance)
Writer: (setf %cepl-context-front-face) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

front-face.

Reader: %cepl-context-gl-context (instance)
Writer: (setf %cepl-context-gl-context) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

gl-context.

Reader: %cepl-context-gl-version-float (instance)
Writer: (setf %cepl-context-gl-version-float) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

gl-version-float.

Reader: %cepl-context-id (instance)
Writer: (setf %cepl-context-id) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

id.

Reader: %cepl-context-instance-count (instance)
Writer: (setf %cepl-context-instance-count) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

instance-count.

Reader: %cepl-context-max-draw-buffer-count (instance)
Writer: (setf %cepl-context-max-draw-buffer-count) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

max-draw-buffer-count.

Reader: %cepl-context-pack-alignment (instance)
Writer: (setf %cepl-context-pack-alignment) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

pack-alignment.

Reader: %cepl-context-read-fbo-binding (instance)
Writer: (setf %cepl-context-read-fbo-binding) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

read-fbo-binding.

Reader: %cepl-context-requested-gl-version (instance)
Writer: (setf %cepl-context-requested-gl-version) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

requested-gl-version.

Reader: %cepl-context-shared (instance)
Writer: (setf %cepl-context-shared) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

shared.

Reader: %cepl-context-surfaces (instance)
Writer: (setf %cepl-context-surfaces) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

surfaces.

Reader: %cepl-context-uninitialized-resources (instance)
Writer: (setf %cepl-context-uninitialized-resources) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

uninitialized-resources.

Reader: %cepl-context-unpack-alignment (instance)
Writer: (setf %cepl-context-unpack-alignment) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

unpack-alignment.

Reader: %cepl-context-vao-binding-id (instance)
Writer: (setf %cepl-context-vao-binding-id) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

vao-binding-id.

Function: %cffi-type->gl-enum (cffi-type-name)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %clear-attachments (attachments)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %clear-current-fbo ()
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %clear-fbo-known-attachments (fbo mask bufs len)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %clear-fbo-unknown-attachments (fbo mask known attachments total-attachment-len)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %clear-fbo-with-explicit-attachments (fbo attachments)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %clear-fbos-attachments (fbo)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %clear-known-attachments (mask bufs len)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %clear-known-attachments-no-restore (mask bufs len)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %clear-unknown-attachments (mask known attachments total-attachment-len)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %clear-unknown-attachments-no-restore (mask known attachments total-attachment-len)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %color-mask (index cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Function: %color-masks (cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Function: %compile-closure (code)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: %copy-compile-context (instance)
Package

cepl.pipelines.

Source

core/pipelines/compile-context.lisp.

Function: %create-implicit-uniform-uploader (compiled-stages uniform-names)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: %cull-face (cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Function: %current-blend-params (cepl-context)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: %current-stencil-params (face cepl-context)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: %current-viewport (cepl-context)
Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: %decode-half-float (bits)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %def-complete-pipeline (name original-gpipe-args stage-pairs aggregate-actual-uniforms aggregate-public-uniforms post raw-context)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: %def-gpu-function (name in-args uniforms body shared doc-string equiv raw-context)

This is the meat of defun-g. it is broken down as follows:

[0] makes a gpu-func-spec that will be populated a stored later.

[1] Adds a external function definition to varjo also make sure it will be called on load

[2] %test-&-process-spec compiles the code to check for errors and log dependencies. (this is called at runtime)

[3] %make-gpu-func-spec is called at expand time to write a lisp function with the same signature as the gpu-function. This gives code hinting and also a decent error message if you try calling it from the cpu.
We don’t do this when using defun-g-equiv as we want to shadow the lisp function.

[4] the purpose of %recompile-gpu-function-and-pipelines is to recompile and functions or pipelines that depend on this gpu function. It does this by calling %recompile-gpu-function-and-pipelines on all the gpu function that depend on this func and then the recompile-function for all pipelines that depend on this gpu function. To this end it walks depth first too all affected pipelines.

[5] At runtime this looks for any gpu function that listed this function as one of its missing dependencies and calls %test-&-process-spec on them. Note that this will (possibly) update the spec but will not trigger a recompile in the pipelines.

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: %def-partial-pipeline (name func-specs stage-pairs aggregate-actual-uniforms raw-context)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: %defn (name typed-args result-types inlinable-p inline-p body)
Package

cepl.defn.

Source

defn/defn.lisp.

Function: %defpipeline-gfuncs (name gpipe-args context)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: %delete-sampler (sampler)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %depth-clamp (cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: %depth-mask (cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: %depth-range-vec2 (cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: %depth-test-function (cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: %encode-half-float (float)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %fbo-owns (fbo attachment-name)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: (setf %fbo-owns) (fbo attachment-name)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %find-tex-image-format (element-format)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: %force-depth-test-function (function cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: %front-face (cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Function: %gen-attachment-blend (attachments fbo body)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: %gen-pass-key ()
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: %gen-texture (pattern)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %get-default-texture-format (attachment)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %get-id ()
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %gl-calc-byte-size (elem-size dimensions row-alignment)
Package

cepl.c-arrays.

Source

core/c-arrays/populate.lisp.

Function: %gl-make-shader-from-varjo (compiled-stage)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: %implicit-uniforms-dont-have-type-mismatches (uniforms)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: %inner-with-context (var-name cepl-context forgo-let body ctx-var)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: %loop-setting-per-attachment-blend-params (fbo)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: %make-buffer-stream (&key vao %start %start-byte base-vertex length %index-type-enum %index-type-size gpu-arrays %primitive primitive-group-id draw-mode-val patch-length managed)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %make-buffer-texture (tex-obj dimensions image-format mipmap layer-count cubes rectangle multisample immutable initial-contents pixel-format)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: %make-cepl-context (&key id gl-context requested-gl-version gl-version-float bound-thread uninitialized-resources shared surfaces current-program current-tfs current-surface vao-binding-id current-viewport default-viewport current-scissor-viewports default-framebuffer read-fbo-binding draw-fbo-binding current-draw-buffers-ptr current-draw-buffers-len current-stencil-params-front current-stencil-params-back current-stencil-mask-front current-stencil-mask-back current-blend-params fbos array-of-bound-gpu-buffers array-of-gpu-buffers array-of-ubo-bindings-buffer-ids array-of-ubo-binding-ranges array-of-ssbo-bindings-buffer-ids array-of-ssbo-binding-ranges array-of-transform-feedback-bindings-buffer-ids array-of-bound-samplers array-of-bound-queries array-of-textures depth-func depth-mask color-masks depth-range depth-clamp cull-face front-face clear-color pack-alignment unpack-alignment max-draw-buffer-count instance-count)
Package

cepl.context.

Source

core/context/types.lisp.

Function: %make-cube-texture (tex-obj dimensions mipmap layer-count cubes buffer-storage rectangle immutable initial-contents image-format pixel-format generate-mipmaps samples fixed-sample-locations)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: %make-default-framebuffer (dimensions &optional double-buffering depth)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %make-glsl-stage-spec (name in-args uniforms context body-string compiled)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: %make-gpu-func-spec (name in-args uniforms context body shared equivalent-inargs equivalent-uniforms actual-uniforms doc-string declarations missing-dependencies diff-tag)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: %make-stand-in-lisp-func-for-glsl-stage (spec)

Makes a regular lisp function with the same names and arguments (where possible) as the glsl-stage who’s spec is provided.

If called the function will throw an error saying that the function can’t currently be used from the cpu.

Package

cepl.pipelines.

Source

core/pipelines/glsl-stages.lisp.

Function: %make-texture (tex-obj dimensions mipmap layer-count cubes buffer-storage rectangle immutable initial-contents image-format pixel-format generate-mipmaps samples fixed-sample-locations)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: %make-texture-with-lisp-data (tex-obj dimensions mipmap layer-count cubes buffer-storage rectangle immutable initial-contents generate-mipmaps element-type image-format pixel-format samples fixed-sample-locations)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: %memcpy (destination-pointer source-pointer byte-length)
Package

cepl.types.

Source

core/types/cffi-helpers.lisp.

Function: %pack-alignment (cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Function: %per-attachment-blending-available-p (cepl-context)
Package

cepl.fbos.

Source

core/blending/blending.lisp.

Function: %post-init (func)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: %print-mem (pointer &optional size-in-bytes)
Package

cepl-utils.

Source

core/utils.lisp.

Function: %process-with-gpu-array-range-macro-args (target access-set)
Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Function: %process-with-gpu-array-range-runtime (gpu-array start length)
Package

cepl.gpu-arrays.

Source

core/gpu-arrays/with-and-push.lisp.

Function: %pull-spec-common (asset-name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: %register-ssbo-id (ctx ssbo-binding-point)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: %register-ubo-id (ctx ubo-binding-point)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Reader: %sampler-context-id (instance)
Writer: (setf %sampler-context-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

context-id.

Function: %scissor-viewport (&optional index cepl-context)
Package

cepl.scissor.

Source

core/scissor/scissor.lisp.

Function: %set-anisotropy (sampler value)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %set-border-color (sampler value)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %set-color-mask (value index cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Function: %set-color-masks (value cepl-context)
Package

cepl.context.

Source

core/color/color.lisp.

Function: %set-compare (sampler value)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %set-cull-face (face cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Function: %set-current-blend-params (params cepl-context)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: %set-current-blend-params-from-fbo (fbo cepl-context)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: %set-current-viewport (cepl-context viewport)
Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: %set-default-fbo-and-viewport (surface cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: %set-default-fbo-viewport (new-dimensions)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %set-depth-clamp (value cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: %set-depth-mask (value cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: %set-depth-range-vec2 (vec2-range cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: %set-depth-test-function (function cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: %set-draw-fbo-no-check (cepl-context fbo)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: %set-fbo-bound (cepl-context fbo)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: %set-fbo-no-check (cepl-context fbo)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: %set-front-face (winding-direction cepl-context)
Package

cepl.context.

Source

core/face/face.lisp.

Function: %set-lod-bias (sampler value)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %set-magnify-filter (sampler value)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %set-max-lod (sampler value)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %set-min-lod (sampler value)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %set-minify-filter (sampler value)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %set-pack-alignment (row-alignment &optional force cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Function: %set-read-fbo-no-check (cepl-context fbo)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: %set-resolution (viewport x y)
Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: %set-scissor-viewport (viewport &optional index cepl-context)
Package

cepl.scissor.

Source

core/scissor/scissor.lisp.

Function: %set-unpack-alignment (row-alignment &optional force cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Function: %set-wrap (sampler value)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: %stencil-mask (face cepl-context)
Package

cepl.context.

Source

core/stencil/mask.lisp.

Function: %test-&-process-spec (spec &key cache-spec)

Use varjo to compile the code.
[0] If the compilation throws a could-not-find-function error, then record that missing function’s name as a missing dependency.

[1] If it succeeds then look at the list of used external-functions, and check which of the names of the macros match the names of a gpu function. The ones that match are the dependencies.

[2] We also record the uniforms in the compiled result. The uniforms in the definition are the public interface, but the compiler may have removed or modified the uniforms. To this end we store the final uniforms and the forms that transform between the public uniform arguments and the internal ones.

[3] We call ’add-layout-to-struct-uniforms’ here to ensure that the ubo/ssbo arguments have the correct layout information. This is not important for the test compilation, but instead for the uniform information that is gathered from this test compile (actual-uniforms).

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: %texture-dimensions (initial-contents dimensions)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: %unbind-fbo ()
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %unbind-tfs-arrays (ctx tfs)
Package

cepl.transform-feedback.

Source

core/transform-feedback/transform-feedback.lisp.

Function: %unpack-alignment (cepl-context)
Package

cepl.context.

Source

core/pixel-store/pixel-store.lisp.

Function: %update-default-framebuffer-dimensions (x y)
Package

cepl.viewports.

Source

core/viewports/viewport.lisp.

Function: %update-fbo-state (fbo)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: %update-glsl-stage-data (spec)

[0] Add or update the spec

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: %update-gpu-function-data (spec depends-on compiled)

[0] Add or update the spec

[1] (re)subscribe to all the dependencies

[2] cache the compile result so we can retrieve it with #’pull1-g or the code with #’pull-g

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: %upload-tex (tex tex-type level-num dimensions layer-num face-num pix-format pix-type pointer/offset row-alignment)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: %valid-index-type-p (x)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: %varjo-compile-as-pipeline (name primitive parsed-gpipe-args)

Compile the gpu functions for a pipeline
The argument to this function is a list of pairs. Each pair contains:
- the shader stage (e.g. vertex fragment etc)
- the name of the gpu function to use for this stage

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: %with-context (var-name cepl-context forgo-let body ctx-var)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: across-c (function c-array)
Package

cepl.c-arrays.

Source

core/c-arrays/map.lisp.

Function: active-p ()
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: add-compile-results-to-pipeline (name compiled-results)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: add-layout-to-struct-uniforms (name target-kind uniforms)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: aggregate-uniforms (name target-kind func-specs &optional actual-uniforms-p)

The reason we need to aggregate uniforms is as follows:
- pipelines are made of composed gpu functions
- each gpu function may introduce uniforms
- to this end we need to make sure the different functions’ uniforms are compatible and then return a final list of aggregated uniforms.

The way we do this is:
[0] Remove all duplicates, this handles all cases where the same uniform is in different gpu-functions
[1] Now if there is any more than one instance of each uniform name then there is a clash

Sidenote:
[X] We call ’add-layout-to-struct-uniforms’ here to ensure that the ubo/ssbo arguments have the correct layout information. This is not important for the test compilation, but instead for the uniform information that is gathered from this test compile (actual-uniforms).

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: allocate-immutable-texture (texture)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: allocate-mutable-texture (texture)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: allocate-texture (texture)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: any-samples-passed-conservative-query-active-p (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf any-samples-passed-conservative-query-active-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: any-samples-passed-conservative-query-cache-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cache-id.

Reader: any-samples-passed-conservative-query-enum (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

enum.

Function: any-samples-passed-conservative-query-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: any-samples-passed-conservative-query-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: any-samples-passed-query-active-p (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf any-samples-passed-query-active-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: any-samples-passed-query-cache-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cache-id.

Reader: any-samples-passed-query-enum (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

enum.

Function: any-samples-passed-query-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: any-samples-passed-query-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: aref-c*-1d (c-array x)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: (setf aref-c*-1d) (c-array x)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: aref-c*-2d (c-array x y)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: (setf aref-c*-2d) (c-array x y)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: aref-c*-3d (c-array x y z)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: (setf aref-c*-3d) (c-array x y z)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: aref-c*-4d (c-array x y z w)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: (setf aref-c*-4d) (c-array x y z w)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: arrays-indirect-command-p (object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: arrays-indirect-command-pointer (instance)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf arrays-indirect-command-pointer) (instance)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: assendingp (list)
Package

cepl.pipelines.

Source

core/pipelines/pipeline-validation.lisp.

Function: assert-arg-format (gfunc-name x)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: assert-glsl-arg-format (name arg)
Package

cepl.pipelines.

Source

core/pipelines/glsl-stages.lisp.

Function: assert-glsl-stage-types (in-args uniforms)
Package

cepl.pipelines.

Source

core/pipelines/glsl-stages.lisp.

Function: assert-layout-consistent (g-struct-info target-layout)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: assert-no-other-context-is-bound-to-thread (this-thread)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: assert-valid-args-for-buffer-backed-texture (image-format cubes rectangle multisample mipmap layer-count texture-type)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: assert-valid-gpipe-form (pipeline-name gpipe-args)
Package

cepl.pipelines.

Source

core/pipelines/pipeline-validation.lisp.

Function: assert-valid-gpipe-shader-implicit-form (pipeline-name gpipe-args)
Package

cepl.pipelines.

Source

core/pipelines/pipeline-validation.lisp.

Function: assert-valid-gpu-function-args (function-name args)
Package

cepl.pipelines.

Source

core/pipelines/pipeline-validation.lisp.

Function: assert-valid-stage-specs (names)
Package

cepl.pipelines.

Source

core/pipelines/pipeline-validation.lisp.

Function: att-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: attachment-compatible (attachment-name image-format &optional for-bind)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: attachment-viewport-allowing-t (fbo attachment-name)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: bake-and-g-> (context-with-primitive primitive stage-pairs uniforms-to-bake)
Package

cepl.pipelines.

Source

core/pipelines/bake.lisp.

Function: base-gstruct-wrapper-p (object)
Package

cepl.types.

Source

core/types/structs.lisp.

Reader: base-gstruct-wrapper-pointer (instance)
Writer: (setf base-gstruct-wrapper-pointer) (instance)
Package

cepl.types.

Source

core/types/structs.lisp.

Target Slot

pointer.

Function: begin-scoped-gpu-query (query)
Package

cepl.queries.

Source

core/queries/query.lisp.

Function: bind-scratch-texture (texture)
Package

cepl.textures.

Source

core/textures/def.lisp.

Function: blank-buffer-object (buffer)
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: blank-buffer-stream (buffer-stream)
Package

cepl.streams.

Source

core/streams/buffer-streams.lisp.

Function: blank-c-array-object (c-array)
Package

cepl.c-arrays.

Source

core/c-arrays/def.lisp.

Function: blank-gpu-array-b-object (gpu-array)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: blank-texture-object (texture)
Package

cepl.textures.

Source

core/textures/def.lisp.

Function: blend-func-namep (keyword)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: boop-p (object)
Package

defxstar-hidden.

Source

core/utils.lisp.

Reader: boop-x (instance)
Writer: (setf boop-x) (instance)
Package

defxstar-hidden.

Source

core/utils.lisp.

Target Slot

boop-x.

Reader: boop-y (instance)
Writer: (setf boop-y) (instance)
Package

defxstar-hidden.

Source

core/utils.lisp.

Target Slot

boop-y.

Function: border-color (sampler)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: (setf border-color) (sampler)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: (setf border-color) (texture)
Package

cepl.textures.

Source

core/textures/texture-samplers.lisp.

Function: buffer-bound-static (ctx index)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: buffer-kind->cache-index (kind)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: buffer-kind->enum (kind)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: buffer-reserve-block-raw (buffer byte-size target usage)

This function creates an empty block of data in the opengl buffer.
It will remove ALL data currently in the buffer.

It also will not update the format of the buffer so you must be sure to handle this yourself. It is much safer to use this as an assistant function to one which takes care of these issues

Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: buffer-reserve-blocks-from-sizes (buffer byte-sizes target usage)
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: buffer-set-arrays-from-sizes (buffer byte-sizes usage)
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: buffer-stream-compatible-typep (slot)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: buffer-texture-allocated-p (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-allocated-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-base-dimensions (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-base-dimensions) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-cache-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-cache-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-cubes-p (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-cubes-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-fixed-sample-locations-p (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-fixed-sample-locations-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-image-format (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-image-format) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-last-sampler-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-last-sampler-id) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-layer-count (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-layer-count) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-mipmap-levels (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-mipmap-levels) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-mutable-p (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-mutable-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-samples (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-samples) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: buffer-texture-type (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf buffer-texture-type) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: c-arr-to-lisp-struct-elems (c-array)
Package

cepl.c-arrays.

Source

core/c-arrays/rest.lisp.

Function: c-arr-to-lisp-val-elems (c-array)
Package

cepl.c-arrays.

Source

core/c-arrays/rest.lisp.

Function: c-array-rank (c-array)
Package

cepl.c-arrays.

Source

core/c-arrays/def.lisp.

Function: calc-aligned-offset (base-offset base-alignment)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-array-of-col-mat-layout (layout-specifier name parent-type-base-offset parent-type-aligned-offset last-slot-base-offset last-slot-aligned-offset last-slot-machine-size type)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-array-of-scalar-or-vectors-layout (layout-specifier name parent-type-base-offset parent-type-aligned-offset last-slot-base-offset last-slot-aligned-offset last-slot-machine-size type)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-array-of-structs-layout (layout-specifier name parent-type-base-offset parent-type-aligned-offset last-slot-base-offset last-slot-aligned-offset last-slot-machine-size type)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-base-offset (parent-type-aligned-offset last-slot-base-offset last-slot-aligned-offset last-slot-machine-size)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-col-mat-layout (layout-specifier name parent-type-base-offset parent-type-aligned-offset last-slot-base-offset last-slot-aligned-offset last-slot-machine-size type)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-feedback-style-and-names (varying-pairs)

returns the mode, the var names & the number of streams

Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: calc-image-format (element-type initial-contents)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: calc-layout (layout-specifier name parent-type-base-offset parent-type-aligned-offset last-slot-base-offset last-slot-aligned-offset last-slot-machine-size type)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-max-num-mipmap-levels (dimensions)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: calc-minify-filter (between-arrays-on-this-level between-arrays-on-different-levels)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: calc-query-get-func-for-gpu-array (arr)
Package

cepl.queries.

Source

core/queries/query.lisp.

Function: calc-sampler-type (texture-type image-format &optional shadow-sampler)

Makes the keyword that names the sampler-type for the given texture-type and format

Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: calc-scalar-layout (layout-specifier name parent-type-aligned-offset last-slot-base-offset last-slot-aligned-offset last-slot-machine-size type)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-struct-layout (layout-specifier name parent-type-aligned-offset last-slot-base-offset last-slot-aligned-offset last-slot-machine-size type)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-struct-member-layout (layout-specifier member-name-type-pairs parent-type-aligned-offset last-slot-base-offset last-slot-aligned-offset last-slot-machine-size)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-vector-base-alignment (type)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: calc-vector-layout (layout-specifier name parent-type-aligned-offset last-slot-base-offset last-slot-aligned-offset last-slot-machine-size type)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: call-listeners ()
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: cepl-client-wait-sync (sync flags timeout)
Package

cepl.sync.

Source

core/sync/sync.lisp.

Function: cepl-context-p (object)
Package

cepl.context.

Source

core/context/types.lisp.

Function: cepl.pipelines.arrays-indirect-command.from-foreign (ptr)
Package

cepl.hidden.

Source

core/pipelines/multi-draw.lisp.

Function: cepl.pipelines.arrays-indirect-command.make (pointer)
Package

cepl.hidden.

Source

core/pipelines/multi-draw.lisp.

Function: cepl.pipelines.arrays-indirect-command.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/pipelines/multi-draw.lisp.

Function: cepl.pipelines.elements-indirect-command.from-foreign (ptr)
Package

cepl.hidden.

Source

core/pipelines/multi-draw.lisp.

Function: cepl.pipelines.elements-indirect-command.make (pointer)
Package

cepl.hidden.

Source

core/pipelines/multi-draw.lisp.

Function: cepl.pipelines.elements-indirect-command.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/pipelines/multi-draw.lisp.

Function: cepl.types.predefined.g-pc.from-foreign (ptr)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pc.make (pointer)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pc.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pn.from-foreign (ptr)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pn.make (pointer)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pn.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pnb.from-foreign (ptr)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pnb.make (pointer)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pnb.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pnc.from-foreign (ptr)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pnc.make (pointer)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pnc.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pncb.from-foreign (ptr)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pncb.make (pointer)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pncb.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pnt.from-foreign (ptr)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pnt.make (pointer)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pnt.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pntb.from-foreign (ptr)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pntb.make (pointer)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pntb.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pntc.from-foreign (ptr)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pntc.make (pointer)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pntc.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pntcb.from-foreign (ptr)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pntcb.make (pointer)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pntcb.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pt.from-foreign (ptr)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pt.make (pointer)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: cepl.types.predefined.g-pt.to-foreign (ptr value)
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Function: change-state (target-state)
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: check-anisotropy-feature ()
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: check-c-array-dimensions (dimensions total-size row-alignment)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: check-immutable-feature ()
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: check-sampler-feature ()
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: check-single-element-not-list (initial-contents dimensions element-type)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: check-version-for-per-attachment-params ()
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: clone-stage-spec (spec &key new-context)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: compile-context-p (object)
Package

cepl.pipelines.

Source

core/pipelines/compile-context.lisp.

Reader: compile-context-primitive (instance)
Writer: (setf compile-context-primitive) (instance)
Package

cepl.pipelines.

Source

core/pipelines/compile-context.lisp.

Target Slot

primitive.

Reader: compile-context-stage (instance)
Writer: (setf compile-context-stage) (instance)
Package

cepl.pipelines.

Source

core/pipelines/compile-context.lisp.

Target Slot

stage.

Reader: compile-context-static-p (instance)
Writer: (setf compile-context-static-p) (instance)
Package

cepl.pipelines.

Source

core/pipelines/compile-context.lisp.

Target Slot

static-p.

Reader: compile-context-versions (instance)
Writer: (setf compile-context-versions) (instance)
Package

cepl.pipelines.

Source

core/pipelines/compile-context.lisp.

Target Slot

versions.

Function: compile-pixel-format (pixel-format)
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Function: complete-single-stage-pipeline (stage)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: complete-unbound-context (unbound-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: compute-expander (profile-name space-symb)

This runs the compute function over the provided space using the currently bound program. Please note: It Does Not bind the program so this function should only be used from another function which
is handling the binding.

Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: compute-glsl-version-from-stage-pairs (stage-pairs)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: compute-space-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: cons-aware-1d-p (x)
Package

cepl.vaos.

Source

core/vaos/vaos.lisp.

Function: copy-any-samples-passed-conservative-query (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-any-samples-passed-query (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-att (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-boop6 (instance)
Package

cepl-utils.

Source

core/utils.lisp.

Function: copy-buffer-stream (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-buffer-texture (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-c-array (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-c-array-to-ssbo (src dst)
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Function: copy-c-array-to-ubo (src dst)
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Function: copy-cepl-context (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Function: copy-compile-context (compile-context &key primitive versions stage static-p)
Package

cepl.pipelines.

Source

core/pipelines/compile-context.lisp.

Function: copy-compute-space (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-delayed (instance)
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Function: copy-empty-fbo-params (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-fbo (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-glambda-state (instance)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: copy-gpu-array (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-gpu-array-bb (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-gpu-array-t (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-gpu-buffer (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-gpu-fence (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-gpu-query (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-lisp-array-to-ssbo (src dst)
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Function: copy-lisp-array-to-ubo (src dst)
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Function: copy-lisp-list-to-ssbo (src dst)
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Function: copy-lisp-list-to-ubo (src dst)
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Function: copy-pipeline-state (instance)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: copy-pixel-format (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-primitives-generated-query (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-render-buffer (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-sampler (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-sampler-id-box (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-samples-passed-query (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-scoped-gpu-query (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-ssbo (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-ssbo-to-new-c-array (src)
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Function: copy-ssbo-to-new-lisp-data (src)
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Function: copy-stencil-params (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-texture (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-time-elapsed-query (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-timestamp-query (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-transform-feedback-primitives-written-query (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-transform-feedback-stream (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-ubo (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: copy-ubo-to-new-c-array (src)
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Function: copy-ubo-to-new-lisp-data (src)
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Function: copy-uidx (instance)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: copy-unbound-cepl-context (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Function: cube->fbo-arrays (fbo-obj fuzzy-args)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: current-blend-params (&optional cepl-context)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: decode-half-float (bits)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: def-dispatch-func (ctx compile-context name init-func-name uniform-assigners aggregate-public-uniforms state-var state-tag compute)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: default-fbo-attachment-enum (attachment-num)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: defun-g-common (name args body equiv)

Define a function that runs on the gpu.

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: defx* (defname name slots)
Package

cepl-utils.

Source

core/utils.lisp.

Function: delay-initialization (cepl-context init-thunk waiting-on-these-resources)
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Function: delayed-p (object)
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Reader: delayed-thunk (instance)
Writer: (setf delayed-thunk) (instance)
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Target Slot

thunk.

Reader: delayed-waiting-on (instance)
Writer: (setf delayed-waiting-on) (instance)
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Target Slot

waiting-on.

Function: describe-image-format (format)
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Function: describe-pixel-format (object)
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Function: dimensions-at-mipmap-level (texture level)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: discard-context-id (id)
Package

cepl.context.

Source

core/context/types.lisp.

Function: dispatch-dyn-gpu-call (pline call-args ret-types)
Package

cepl.pipelines.

Source

core/pipelines/funcall-g.lisp.

Function: dispatch-make-assigner (indexes local-arg-name arg-name type glsl-name qualifiers)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: draw-expander (profile-name ctx-symb stream-symb draw-mode-symb primitive)

This draws the single stream provided using the currently bound program. Please note: It Does Not bind the program so this function should only be used from another function which is handling the binding.

Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: draw-mode-symbol-group-id (x)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: dyn-code-to-pipeline-and-stages (code)
Package

cepl.pipelines.

Source

core/pipelines/funcall-g.lisp.

Function: early-compute-mask (attachments)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: elements-indirect-command-p (object)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: elements-indirect-command-pointer (instance)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: (setf elements-indirect-command-pointer) (instance)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: empty-fbo-args-p (fuzzy-args)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: empty-fbo-params-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: enable-transform-feedback (prog-id mode names)

Returns the number of gpu-arrays that should be bound in the transform-feedback-stream

Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: encode-half-float (float)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: end-scoped-gpu-query (query)
Package

cepl.queries.

Source

core/queries/query.lisp.

Function: ensure-array-of-ssbo-binding-ranges (ctx id)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: ensure-array-of-ssbo-bindings-buffer-ids (ctx id)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: ensure-array-of-ubo-binding-ranges (ctx id)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: ensure-array-of-ubo-bindings-buffer-ids (ctx id)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: ensure-cepl-compatible-setup ()
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: ensure-fbo-array-size (fbo desired-size)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: error-on-invalid-upload-formats (target image-format pixel-format pixel-type)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: escape-tildes (str)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: establish-texture-type (dimensions mipmap layers cubes po2 multisample buffer rectangle)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: expand-lambda-defpipeline (name context gpipe-args)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: expand-mappable-slot-to-layout (slot type normalize)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: expand-slot-to-layout (slot &optional type normalize)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: expand-unmappable-slot-to-layout (slot type normalize)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: extract-dimension-from-make-fbo-pattern (pattern)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: extract-matching-dimension-value (args)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: fallback-iuniform-func (prog-id &rest uniforms)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: fallback-sampler-set (sampler)
Package

cepl.textures.

Source

core/textures/texture-samplers.lisp.

Function: fbo-attach-array (cepl-context fbo tex-array attachment-name)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: fbo-attach-render-buffer (cepl-context fbo render-buffer attachment-name)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: fbo-color-arrays (fbo)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: fbo-detach (cepl-context fbo attachment-name)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: fbo-gen-attach (fbo check-dimensions-matchp &rest args)

The are 4 kinds of valid argument:
- keyword naming an attachment: This makes a new texture
with size of (current-viewport) and attaches
- (keyword texarray): attaches the tex-array
- (keyword texture): attaches the root tex-array
- (keyword some-type) any types that supports the generic dimensions function creates a new texture at the framesize of the object and attaches it to attachment named by keyword

Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: find-compatible-c-array-type (current-set data)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: find-gpu-func-spec-by-name-and-vals (name in-vals)
Package

cepl.pipelines.

Source

core/pipelines/funcall-g.lisp.

Function: find-invalid-defpipeline-options (options valid-keys)
Package

cepl.pipelines.

Source

core/pipelines/pipeline-validation.lisp.

Function: find-suitable-type (datum)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: first-elem (x)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: force-bind-vao (vao cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: force-depth-test-function (function &optional cepl-context)
Package

cepl.context.

Source

core/depth/depth.lisp.

Function: force-sampler-bound (ctx sampler tex-unit)
Package

cepl.context.

Source

core/samplers/context.lisp.

Function: force-scissor-viewport (viewport index cepl-context)
Package

cepl.scissor.

Source

core/scissor/scissor.lisp.

Function: force-use-program (ctx program-id)
Package

cepl.pipelines.

Source

core/pipelines/programs.lisp.

Function: forget-fbo (cepl-context fbo)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: forget-gpu-buffer (cepl-context gpu-buffer)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: forget-texture (cepl-context texture)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: forgiving-list-dimension-guess (list)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: format-array-slot-for-cstruct (slot layout)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: format-slot-for-cstruct (slot layout)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: format-slot-for-varjo (slot)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: free-context (cepl-context)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: free-fbo (fbo)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: free-gpu-array-bb (gpu-array)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: free-gpu-array-t ()
Package

cepl.textures.

Source

core/textures/def.lisp.

Function: free-gpu-buffer (buffer)
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: free-gpu-buffers (buffers)
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: free-user-fbo (fbo)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: from-active (target-state)
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: from-suspended (target-state)
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: from-unitialized (target-state)
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: funcs-these-funcs-use (names &optional include-names)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: funcs-this-func-uses (key)

Recursivly searches for functions by this function.
Sorts the list of function names by dependency so the earlier names are depended on by the functions named later in the list

Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: function-arg-p (arg)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: function-formp (x)
Package

cepl.pipelines.

Source

core/pipelines/pipeline-validation.lisp.

Function: function-keyed-pipeline (func)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: (setf function-keyed-pipeline) (func)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: function-uniforms (func-specs)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: fuzzy-args->arrays (fbo-obj fuzzy-args)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: g-pc-p (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pc-pointer (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: (setf g-pc-pointer) (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pn-p (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pn-pointer (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: (setf g-pn-pointer) (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pnb-p (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pnb-pointer (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: (setf g-pnb-pointer) (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pnc-p (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pnc-pointer (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: (setf g-pnc-pointer) (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pncb-p (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pncb-pointer (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: (setf g-pncb-pointer) (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pnt-p (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pnt-pointer (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: (setf g-pnt-pointer) (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pntb-p (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pntb-pointer (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: (setf g-pntb-pointer) (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pntc-p (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pntc-pointer (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: (setf g-pntc-pointer) (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pntcb-p (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pntcb-pointer (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: (setf g-pntcb-pointer) (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pt-p (object)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-pt-pointer (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: (setf g-pt-pointer) (instance)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: g-struct-info (name &key error-if-not-found)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: (setf g-struct-info) (name)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: gen-buffer ()
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: gen-buffer-tex-initial-contents (initial-contents dimensions image-format cubes rectangle multisample mipmap layer-count pixel-format)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: gen-c-array-sizes (dimensions element-byte-size alignment)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: gen-complete-lambda-pipeline-code (ctx compute implicit-u-lets implicit-u-uploads implicit-uniform-transforms post primitive stream-symb stream-type u-cleanup u-lets u-uploads uniform-names enable-rasterizer)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: gen-depth-stencil-texture (depth stencil)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: gen-pipeline-init (name primitive stage-pairs post aggregate-public-uniforms uniform-assigners state-tag)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: gen-query-id ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: gen-recompile-func (name original-gpipe-args raw-context)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: gen-texture ()
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: gen-update-spec (name stage-pairs raw-context)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: gen-vertex-stage-code-calling-func (spec)
Package

cepl.pipelines.

Source

core/pipelines/funcall-g.lisp.

Function: generate-uniform-upload-forms (uniform-assigners)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: get-best-glsl-version (cepl-context)
Package

cepl.context.

Source

core/context/version.lisp.

Function: get-body-string (body)
Package

cepl.pipelines.

Source

core/pipelines/glsl-stages.lisp.

Function: get-component-length (components)
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Function: get-dyn-return-types-from-stage (stage)
Package

cepl.pipelines.

Source

core/pipelines/funcall-g.lisp.

Function: get-feedback-out-vars (stages)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: get-foreign-uniform-function (type)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: get-foreign-uniform-function-name (type)

Used when uploading from a foreign data source (like a c-array) This lets your uploading from an offset the source

Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: get-free-context-id ()
Package

cepl.context.

Source

core/context/types.lisp.

Function: get-free-ssbo-id ()
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Function: get-free-ubo-id ()
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Function: get-func-as-stage-code (func-spec)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: get-gl-attachment-enum (cepl-context fbo x)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: get-gpu-func-spec-tag ()
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: get-possible-designators-for-name (name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: get-sampler-id-box (lod-bias min-lod max-lod minify-filter magnify-filter wrap compare)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: get-shader-storage-block-index (program name)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: get-stage-key (stage-designator &optional options-on-error)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: get-stage-kind-from-context (context)
Package

cepl.pipelines.

Source

core/pipelines/glsl-stages.lisp.

Function: get-transform-feedback-primitive (stages)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: get-uniform-block-index (program name)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: get-uniform-function (type)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: get-uniform-function-name (type)

Used when uploading lisp data

Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: get-varyings (prog-id index)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: gl-calc-byte-size (type dimensions row-alignment)
Package

cepl.c-arrays.

Source

core/c-arrays/populate.lisp.

Function: glambda-state-p (object)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Reader: glambda-state-pipeline (instance)
Writer: (setf glambda-state-pipeline) (instance)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Target Slot

pipeline.

Reader: glambda-state-recompiler (instance)
Writer: (setf glambda-state-recompiler) (instance)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Target Slot

recompiler.

Reader: glambda-state-spec (instance)
Writer: (setf glambda-state-spec) (instance)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Target Slot

spec.

Function: gpu-array-bb-dimensions (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf gpu-array-bb-dimensions) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: gpu-array-sub-data (gpu-array c-array &key types-must-match)
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: gpu-array-t-dimensions (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf gpu-array-t-dimensions) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: gpu-fence-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: gpu-func-specs (name &optional error-if-missing)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: gpu-query-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: guess-a-varjo-array-type (x)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: guess-a-varjo-bool-type (x)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: guess-a-varjo-float-type (x)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: guess-a-varjo-integer-type (x)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: guess-a-varjo-number-type (x)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: guess-a-varjo-type (x)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: handle-empty-framebuffer (fbo-obj args)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: handle-transform-feedback (ctx draw-mode prog-id tfs-primitive tfs-array-count)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: has-func-type-in-args (func-specs)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: init-buffer-stream-from-id (stream-obj vao-gl-object gpu-arrays index-array start length base-vertex retain-arrays)
Package

cepl.streams.

Source

core/streams/buffer-streams.lisp.

Function: init-buffer-stream-from-shared (new-stream src-stream base-vertex)
Package

cepl.streams.

Source

core/streams/buffer-streams.lisp.

Function: init-gl-context (cepl-context surface)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: init-gpu-array-from-c-array (arr c-array access-style dimensions)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: init-gpu-array-no-data (array dimensions element-type access-style row-alignment)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: init-gpu-arrays-from-c-arrays (g-arrays c-arrays access-style)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: init-gpu-buffer-now (new-buffer gl-object initial-contents buffer-target usage)
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: init-gpu-buffer-now-with-layouts (new-buffer gl-object layouts usage keep-data)
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: init-pending-surfaces (context)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: initialize-all-delay-items-in-context (cepl-context)
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Function: initialize-all-delayed (thunks)
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Function: initialize-as-empty-fbo (fbo)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: initialize-delayed (delay-again item)
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Function: initialize-regular-fbo (fbo-obj)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: interactive-delete-gpu-function (name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: interactive-pick-gpu-function (name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: lambda-arg-p (x)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: lambda-g->lisp-code (glambda)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: lambda-g->state (lambda-g)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: lambda-g->varjo-lambda-code (glambda)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: legacy-add-surface (context title width height fullscreen resizable no-frame hidden make-current gl-version)
Package

cepl.context.

Source

core/context/surface.lisp.

Links all the shaders into the program provided

Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: list-of-c-arrays-p (x)
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: load-shader (file-path &optional shader-type)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: load-shaders (&rest shader-paths)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: loop-disabling-attachments (fbo)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: loop-enabling-attachments (fbo)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: lowest-suitable-glsl-version (compile-context)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: machine-unit-size (type &optional stride)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: make-arg-assigners (uniform-args)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: make-array-assigners (indexes arg-name type glsl-name-path &optional byte-offset)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: make-array-slot-getter (slot type-name foreign-struct-name layout)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-array-slot-setter (slot type-name layout)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-arrays-indirect-command (&key count instance-count first base-instance)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: make-assigner (&key let-forms uploaders pointer-arg arg-name local-arg-name cleanup always-uploadp)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: make-assigner-let (&key name index type body)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: make-base-gstruct-wrapper (&key pointer)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-boop6 (&key boop-x boop-y)
Package

defxstar-hidden.

Source

core/utils.lisp.

Function: make-buffer-stream-from-id (vao-gl-object gpu-arrays &key index-array start length retain-arrays primitive base-vertex)
Package

cepl.streams.

Source

core/streams/buffer-streams.lisp.

Function: make-compile-context (&key primitive versions stage static-p)
Package

cepl.pipelines.

Source

core/pipelines/compile-context.lisp.

Function: make-complete-lambda-pipeline (compile-context stage-pairs func-specs post register-spec)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: make-context-internals (is-implicit-context-p &optional gl-version)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: make-default-sampler-id-box ()
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: make-delayed (&key waiting-on thunk)
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Function: make-elements-indirect-command (&key count instance-count first-index base-vertex base-instance)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: make-eprim-slot-setter (slot type-name foreign-struct-name layout)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-existing-fbo-empty (fbo last-attachment)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: make-fbo-non-empty (fbo)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: make-fbo-now (fbo-obj)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: make-glambda-state (&key pipeline recompiler spec)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: make-gpu-array-share-data (gpu-array-to-modify gpu-array-with-data byte-offset-into-source-data element-type dimensions row-alignment pixel-format)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: make-gpu-lambda (args body)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: make-gpu-query ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-instance-wrapper-def (name foreign-struct-name wrapper-constructor-name slots typed-populate slot-layouts)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-lambda-pipeline (gpipe-args raw/compiled-context)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: make-lambda-pipeline-inner (gpipe-args compile-context &key register-lambda-pipeline)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: make-lambda-pipeline-spec (prog-id compiled-stages)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: make-make-struct (constructor-name wrapper-constructor-name awrap-type-name slots)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-partial-lambda-pipeline (func-specs)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: make-pipeline-spec (name stages context)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: make-pipeline-state (&key diff-tag prog-ids implicit-uniform-upload-func tfs-primitive tfs-array-count enable-rasterizer uniform-int-ids uniform-uint-ids)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: make-populate (name typed-populate slots)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-pull-push (name slots)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-render-buffer-now (render-buffer dimensions image-format multisample)
Package

cepl.render-buffers.

Source

core/render-buffers/render-buffer.lisp.

Function: make-sampler-assigner (indexes arg-name type glsl-name-path)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: make-sampler-now (sampler-obj lod-bias min-lod max-lod minify-filter magnify-filter wrap compare anisotropy)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: make-scoped-gpu-query (&key id enum cache-id active-p)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: make-shader (shader-type source-string &optional shader-id)

This makes a new opengl shader object by compiling the text in the specified file and, unless specified, establishing the shader type from the file extension

Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: make-simple-assigner (indexes arg-name type glsl-name-path &optional byte-offset)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: make-slot-getter (slot type-name foreign-struct-name layout)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-slot-setter (slot type-name foreign-struct-name layout)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-ssbo-assigner (indexes arg-name varjo-type glsl-name)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: make-ssbo-from-buffer (&rest not-yet-implemented)
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Function: make-stand-in-lisp-func (spec)

Makes a regular lisp function with the same names and arguments (where possible) as the gpu function who’s spec is provided.

If called the function will throw an error saying that the function can’t currently be used from the cpu.

This means we get function arg hints, doc-string and also we have the opportunity to provide a cpu implementation one day we want to.

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: make-struct-assigners (indexes arg-name type glsl-name-path &optional byte-offset)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: make-struct-attrib-assigner (type-name slots)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-struct-pixel-format (name slots)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-surface-from-pending (pending-surface)
Package

cepl.context.

Source

core/context/surface.lisp.

Function: make-t-slot-getter (slot type-name foreign-struct-name)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-t-slot-setter (slot type-name layout)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-texture-now (tex-obj initial-contents dimensions element-type mipmap layer-count cubes rectangle immutable buffer-storage generate-mipmaps pixel-format samples fixed-sample-locations)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: make-ubo-assigner (indexes arg-name varjo-type glsl-name)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: make-ubo-from-buffer (&rest not-yet-implemented)
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Function: make-uidx (&key int uint)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: make-unbound-cepl-context (&key consumed gl-context requested-gl-version shared surface surfaces)
Package

cepl.context.

Source

core/context/types.lisp.

Function: make-varjo-struct-def (name slots)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: make-varjo-struct-lookup (name)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: mapg-context-p (ctx)
Package

cepl.pipelines.

Source

core/pipelines/mapg-context.lisp.

Function: massage-compute-stage-name (name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: merge-into-assigner (pointer-arg assingers)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Function: multisample-texture-p (texture)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: nest-simple-loops (dimensions index-vars body &optional loop-op)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: new-func-key (name in-args-types)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: normalize-slot-description (qualified-struct-name slot-description slot-layout type-name readers writers)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: note-change (sampler)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: null-func-spec ()
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: pack-pixels-from-texture (tex-array pixel-format row-alignment pointer/offset single-image-size)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: pairs-key-to-stage (stage-pairs)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: parse-compile-context (name raw-context for)
Package

cepl.pipelines.

Source

core/pipelines/compile-context.lisp.

Function: parse-defn-args (typed-args result-types)
Package

cepl.defn.

Source

defn/defn.lisp.

Function: parse-gpipe-args (pipeline-name args)

Gets the stage pairs and context for the given gpipe form.
If there are only two gpu functions named and no explicit stages then
it is assumed that the first is the vertex stage and the second the fragment stage.
Otherwise you are expected to name the stages. You can name one and then let this function fill in the rest, but I think that’s a bit hairy and will probably be removed.

stage pairs are of the form (stage-name . gpu-function-name)

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: parse-gpipe-args-explicit (pipeline-name args)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: parse-gpipe-args-implicit (args)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: parsed-gpipe-args->v-translate-args (name pipeline-primitive stage-kind func-spec &optional replacements)

parsed-gpipe-args->v-translate-args processed the (stage . gfunc-name) pairs that %compile-link-and-upload want to call v-rolling-translate on.
To do this we need to look up the gpu function spec and turn them into valid arguments for the rolling-translate function.
It also:
[0] if it’s a glsl-stage then it is already compiled. Pass the compile-result and let varjo handle it
[1] is what handles the transformation of func (including gpu-lambdas) [2] ’replacements’ specifies uniforms to replace in the stage.

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: patch-uninitialized-context-with-version (cepl-context requested-gl-version)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: pipeline-spec (name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: (setf pipeline-spec) (name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Reader: pipeline-state-diff-tag (instance)
Writer: (setf pipeline-state-diff-tag) (instance)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Target Slot

diff-tag.

Reader: pipeline-state-enable-rasterizer (instance)
Writer: (setf pipeline-state-enable-rasterizer) (instance)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Target Slot

enable-rasterizer.

Reader: pipeline-state-implicit-uniform-upload-func (instance)
Writer: (setf pipeline-state-implicit-uniform-upload-func) (instance)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Target Slot

implicit-uniform-upload-func.

Function: pipeline-state-p (object)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Reader: pipeline-state-prog-ids (instance)
Writer: (setf pipeline-state-prog-ids) (instance)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Target Slot

prog-ids.

Reader: pipeline-state-tfs-array-count (instance)
Writer: (setf pipeline-state-tfs-array-count) (instance)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Target Slot

tfs-array-count.

Reader: pipeline-state-tfs-primitive (instance)
Writer: (setf pipeline-state-tfs-primitive) (instance)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Target Slot

tfs-primitive.

Reader: pipeline-state-uniform-int-ids (instance)
Writer: (setf pipeline-state-uniform-int-ids) (instance)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Target Slot

uniform-int-ids.

Reader: pipeline-state-uniform-uint-ids (instance)
Writer: (setf pipeline-state-uniform-uint-ids) (instance)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Target Slot

uniform-uint-ids.

Function: pixel-format! (components &optional type normalize reversed)
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Function: po2p (x)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: populate-arrays-indirect-command (object data)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: populate-elements-indirect-command (object data)
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Function: populate-g-pc (object data)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: populate-g-pn (object data)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: populate-g-pnb (object data)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: populate-g-pnc (object data)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: populate-g-pncb (object data)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: populate-g-pnt (object data)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: populate-g-pntb (object data)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: populate-g-pntc (object data)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: populate-g-pntcb (object data)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: populate-g-pt (object data)
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Function: post-gl-init (fbo-obj &key id draw-buffer-map clear-mask)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: potential-struct-layout (name layout-specifier slot-descriptions)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: pre-gl-init (fbo-obj &key color-arrays depth-array stencil-array is-default blending-params)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: preprocess-gpu-arrays-for-vao (gpu-arrays)
Package

cepl.vaos.

Source

core/vaos/vaos.lisp.

Function: primary-context ()
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: primary-thread ()
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: primitive-keyword-to-enum-val (kwd)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: primitive-vert-length (prim)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: primitives-generated-query-active-p (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf primitives-generated-query-active-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: primitives-generated-query-cache-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cache-id.

Reader: primitives-generated-query-enum (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

enum.

Function: primitives-generated-query-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: primitives-generated-query-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: process-defn-declares (func-name decls)
Package

cepl.defn.

Source

defn/defn.lisp.

Function: process-fbo-init-pattern (pattern)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: process-glsl-arg (arg)
Package

cepl.pipelines.

Source

core/pipelines/glsl-stages.lisp.

Function: process-layout (layout)
Package

cepl.gpu-buffers.

Source

core/gpu-buffers/gpu-buffers.lisp.

Function: process-layout (layout)
Package

cepl.gpu-arrays.buffer-backed.

Source

core/gpu-arrays/buffer-backed.lisp.

Function: process-layout-specifier (layout-specifier)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: process-mp-path (pathname name)
Package

cepl.

Source

project.lisp.

Function: process-pixel-format (components type normalize reversed)
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Function: process-stream-layout (layout)
Package

cepl.streams.

Source

core/streams/buffer-streams.lisp.

Function: program-attrib-count (program)

Returns the number of attributes used by the shader

Package

cepl.pipelines.

Source

core/pipelines/programs.lisp.

Function: program-attributes (program)

Returns a list of details of the attributes used by the program. Each element in the list is a list in the format: (attribute-name attribute-type attribute-size)

Package

cepl.pipelines.

Source

core/pipelines/programs.lisp.

Function: program-uniform-count (prog-id)

Returns the number of uniforms used by the shader

Package

cepl.pipelines.

Source

core/pipelines/programs.lisp.

Function: program-uniforms (program-id)

Returns a list of details of the uniforms used by
the program. Each element in the list is a list in the format: (uniform-name uniform-type uniform-size)

Package

cepl.pipelines.

Source

core/pipelines/programs.lisp.

Function: ptr-index-1d (c-array x)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: ptr-index-2d (c-array x y)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: ptr-index-3d (c-array x y z)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: ptr-index-4d (c-array x y z w)
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Function: pull-g-soft-multi-func-message (asset-name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: read-gpu-function-choice (intro-text gfunc-name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: recompile-name (name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: register-event-listener (function)

Register a function to be called on each event from the host

Package

cepl.host.

Source

host/api-common.lisp.

Function: register-fbo (cepl-context fbo)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: register-gpu-buffer (cepl-context gpu-buffer)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: register-lambda-pipeline (spec closure)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: register-named-pipeline (name func)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: register-texture (cepl-context texture)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: reinit-on-context (gpu-array)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: render-buffer-element-type (render-buffer)
Package

cepl.render-buffers.

Source

core/render-buffers/render-buffer.lisp.

Function: replace-host (host-obj)
Package

cepl.host.

Source

host/api-api.lisp.

Function: request-program-id-for (context name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: restore-array-of-bound-gpu-buffers (context buffer-targets)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-array-of-bound-samplers (context tex-unit-ids)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-array-of-ssbo-bindings-buffer-ids (context ssbo-indices)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-array-of-ubo-bindings-buffer-ids (context ubo-indices)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-clear-color (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-color-masks (context color-mask-indices)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-cull-face (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-current-scissor-viewports (context scissor-viewport-indices)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-depth-clamp (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-depth-mask (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-depth-range (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-depth-test-function (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-fbo-bindings (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-front-face (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-pack-alignment (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-program (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-stencil (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-unpack-alignment (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-vao (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: restore-viewport (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: rm-index-to-coords (index subscripts)
Package

cepl.c-arrays.

Source

core/c-arrays/populate.lisp.

Function: round-to-next-multiple (val multiple)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: runtime-restore-block-checks (context)
Package

cepl.context.

Source

core/context/known-state-blocks.lisp.

Function: sampler-id-box-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: sampler-on-context ()
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: sampler-typep (type)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: samples-passed-query-active-p (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf samples-passed-query-active-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: samples-passed-query-cache-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cache-id.

Reader: samples-passed-query-enum (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

enum.

Function: samples-passed-query-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: samples-passed-query-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: scalar-type-p (type)
Package

%cepl.types.

Source

core/types/layout.lisp.

Function: scan-array-for-type (data)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: scan-for-type (data)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: scan-list-for-type (data)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: scoped-gpu-query-cache-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: scoped-gpu-query-enum (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: scoped-gpu-query-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: scoped-gpu-query-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: serialize-stage-pairs (stage-pairs)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: set-buffer-bound-static (ctx buffer index enum)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: set-context-defaults (cepl-context)
Package

cepl.context.

Source

core/context/make.lisp.

Function: set-current-blend-params (params &optional cepl-context)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: set-current-blend-params-from-fbo (fbo &optional cepl-context)
Package

cepl.blending.

Source

core/blending/blending.lisp.

Function: set-patch-stream-primitive (stream primitive)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: set-sampler-bound (ctx sampler tex-unit)
Package

cepl.context.

Source

core/samplers/context.lisp.

Function: shader-type-from-path (path)

This uses the extension to return the type of the shader. Currently it only recognises .vert or .frag files

Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: slow-query-mipmap-count (texture)

This is a hack, never use it in production code.

GL has no function for querying the number of mipmap levels
so what we do is get the maxiumum possible count and iterate through checking the width to see at what point the width reaches 0 or GL throws an error.

Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: spec-changed-p (spec old-spec)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: split-args-for-dyn-call (args)
Package

cepl.pipelines.

Source

core/pipelines/funcall-g.lisp.

Function: ssbo-bind-buffer-id-range (ctx id ssbo-binding-point offset size)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: stage-formp (x)
Package

cepl.pipelines.

Source

core/pipelines/pipeline-validation.lisp.

Function: stages-require-partial-pipeline (func-specs)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: stateless-quad-geometry-stage (&rest args)
Package

cepl.pipelines.

Source

core/pipelines/quad-stages.lisp.

Function: stateless-quad-vertex-stage (&rest args)
Package

cepl.pipelines.

Source

core/pipelines/quad-stages.lisp.

Function: stencil-operation-enum-to-func (enum)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-operation-to-enum (operation)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-params-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: stencil-test-enum-to-func (enum)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: stencil-test-to-enum (test)
Package

cepl.stencil.

Source

core/stencil/stencil.lisp.

Function: suitable-array-for-index-p (array)
Package

cepl.vaos.

Source

core/vaos/vaos.lisp.

Function: surface-dimensions (surface)
Package

cepl.internals.

Source

core/internals.lisp.

Function: surface-resolution (surface)
Package

cepl.internals.

Source

core/internals.lisp.

Function: suspended-p ()
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: swap-versions (stage-pairs glsl-version)
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Function: (setf tex-compare) (texture)
Package

cepl.textures.

Source

core/textures/texture-samplers.lisp.

Function: tex-kind->cache-index (kind)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: (setf tex-lod-bias) (texture)
Package

cepl.textures.

Source

core/textures/texture-samplers.lisp.

Function: (setf tex-magnify-filter) (texture)
Package

cepl.textures.

Source

core/textures/texture-samplers.lisp.

Function: (setf tex-max-lod) (texture)
Package

cepl.textures.

Source

core/textures/texture-samplers.lisp.

Function: (setf tex-min-lod) (texture)
Package

cepl.textures.

Source

core/textures/texture-samplers.lisp.

Function: (setf tex-minify-filter) (texture)
Package

cepl.textures.

Source

core/textures/texture-samplers.lisp.

Function: tex-storage-1d (target levels image-format width)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: tex-storage-2d (target levels image-format width height)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: tex-storage-2d-multisample (target image-format width height samples fixed-sample-locations)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: tex-storage-3d (target levels image-format width height depth)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: tex-storage-3d-multisample (target image-format width height depth samples fixed-sample-locations)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: (setf tex-wrap) (texture)
Package

cepl.textures.

Source

core/textures/texture-samplers.lisp.

Function: throw-missing-col-attrs (pattern fbo col-arrs fp)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: time-elapsed-query-active-p (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf time-elapsed-query-active-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: time-elapsed-query-cache-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cache-id.

Reader: time-elapsed-query-enum (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

enum.

Function: time-elapsed-query-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: time-elapsed-query-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: timestamp-query-cache-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cache-id.

Reader: timestamp-query-enum (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

enum.

Function: timestamp-query-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: timestamp-query-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: to-active (target-state)
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: to-cepl-type-spec (spec)
Package

cepl.pipelines.

Source

core/pipelines/funcall-g.lisp.

Function: to-shutting-down ()
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: to-suspended (target-state)
Package

cepl.lifecycle.

Source

core/lifecycle.lisp.

Function: transform-feedback-bind-buffer-id-range (ctx id tfb-binding-point offset size)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Function: transform-feedback-primitives-written-query-active-p (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: (setf transform-feedback-primitives-written-query-active-p) (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Reader: transform-feedback-primitives-written-query-cache-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

cache-id.

Reader: transform-feedback-primitives-written-query-enum (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Target Slot

enum.

Function: transform-feedback-primitives-written-query-id (instance)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: transform-feedback-primitives-written-query-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: transform-feedback-stream-p (object)
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Function: try-guessing-a-varjo-type-for-symbol (s)

This function is provided to varjo to allow inference of the types of implicit uniforms.

Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: try-injecting-a-constant (constant-name)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: type-contains-structs (type)
Package

cepl.pipelines.

Source

core/pipelines/glsl-stages.lisp.

Function: typed-defp (x)
Package

cepl.pipelines.

Source

core/pipelines/pipeline-validation.lisp.

Function: ubo-bind-buffer-id-range (ctx id ubo-binding-point offset size)
Package

cepl.context.

Source

core/context/cepl-context.lisp.

Reader: uidx-int (instance)
Writer: (setf uidx-int) (instance)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

int.

Function: uidx-p (object)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Reader: uidx-uint (instance)
Writer: (setf uidx-uint) (instance)
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

uint.

Function: unbind-texture-from-scratch (texture)
Package

cepl.textures.

Source

core/textures/def.lisp.

Reader: unbound-cepl-context-consumed (instance)
Writer: (setf unbound-cepl-context-consumed) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

consumed.

Reader: unbound-cepl-context-gl-context (instance)
Writer: (setf unbound-cepl-context-gl-context) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

gl-context.

Function: unbound-cepl-context-p (object)
Package

cepl.context.

Source

core/context/types.lisp.

Reader: unbound-cepl-context-requested-gl-version (instance)
Writer: (setf unbound-cepl-context-requested-gl-version) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

requested-gl-version.

Reader: unbound-cepl-context-shared (instance)
Writer: (setf unbound-cepl-context-shared) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

shared.

Reader: unbound-cepl-context-surface (instance)
Writer: (setf unbound-cepl-context-surface) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

surface.

Reader: unbound-cepl-context-surfaces (instance)
Writer: (setf unbound-cepl-context-surfaces) (instance)
Package

cepl.context.

Source

core/context/types.lisp.

Target Slot

surfaces.

Function: uniform-1b (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-1f (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-1i (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-2f (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-2i (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-3f (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-3i (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-4f (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-4i (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-matrix-2ft (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-matrix-2fvt (location count ptr)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-matrix-3ft (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-matrix-3fvt (location count ptr)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-matrix-4ft (location value)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-matrix-4fvt (location count ptr)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: uniform-sampler (location image-unit)
Package

cepl.pipelines.

Source

core/pipelines/uniforms.lisp.

Function: update-clear-mask (fbo)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: update-data (data type)
Package

cepl.c-arrays.

Source

core/c-arrays/make.lisp.

Function: update-draw-buffer-map (fbo)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: update-pipeline-spec (spec)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: update-specs-with-missing-dependencies ()
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: upload-c-array-to-gpu-array-t (gpu-array c-array &optional pixel-format)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: upload-gpu-array-bb-to-gpu-array-t (gpu-array-t gpu-array-bb &optional pixel-format)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: use-program (ctx program-id)
Package

cepl.pipelines.

Source

core/pipelines/programs.lisp.

Function: valid-index-p (texture mipmap-level layer cube-face)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: valid-pixel-format-p (components type normalize reversed)
Package

cepl.pixel-formats.

Source

core/types/pixel-format.lisp.

Function: validate-defstruct-g-form (name slots)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: validate-dimensions (data dimensions struct-elem-type-p)
Package

cepl.c-arrays.

Source

core/c-arrays/populate.lisp.

Function: validate-pixel-format (initial-contents pixel-format)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Function: validate-stage-names (names)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Function: validate-varjo-type-spec (spec)
Package

cepl.types.

Source

core/types/structs.lisp.

Function: varjo->gl-stage-names (stage)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Function: viewport-for-array (arr)
Package

cepl.fbos.

Source

core/fbos/fbo.lisp.

Function: vs-spliced-values (env this &rest sargs)
Package

cepl.pipelines.

Source

core/pipelines/funcall-g.lisp.

Function: with-setf-internals (env places values)
Package

cepl-utils.

Source

core/utils.lisp.

Function: wrap-allowing-recompilation (pipeline lambda-pipeline-spec gpipe-args compile-context)
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Function: wrap-eq (wrap-a wrap-b)
Package

cepl.samplers.

Source

core/samplers/samplers.lisp.

Function: xsymbolp (x)
Package

cepl.pipelines.

Source

core/pipelines/pipeline-validation.lisp.


5.2.6 Generic functions

Generic Function: %destroy-surface (host surface &key &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %destroy-surface (host surface &key &allow-other-keys)
Source

host/api-common.lisp.

Method: %destroy-surface ((host api-1) surface &key &allow-other-keys)
Source

host/api-1.lisp.

Method: %destroy-surface ((host api-0) surface &key &allow-other-keys)
Source

host/api-0.lisp.

Generic Function: %funcs-this-func-uses (key &optional depth)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: %funcs-this-func-uses ((key func-key) &optional depth)
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: %gpu-function (name)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: %gpu-function ((name list))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: %gpu-function ((name null))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: %gpu-function ((name symbol))
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: %init (host args)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %init ((host api-1) (args list))
Source

host/api-1.lisp.

Method: %init ((host api-0) (args list))
Source

host/api-0.lisp.

Generic Function: %make-gl-context (host &key surface version double-buffer alpha-size red-size green-size blue-size depth-size stencil-size buffer-size &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %make-gl-context ((host api-1) &key surface version double-buffer alpha-size red-size green-size blue-size depth-size stencil-size buffer-size &allow-other-keys)
Source

host/api-1.lisp.

Method: %make-gl-context ((host api-0) &key &allow-other-keys)
Source

host/api-0.lisp.

Generic Function: %make-gl-context-shared-with-current-context (host &key current-gl-context surface version double-buffer alpha-size red-size green-size blue-size depth-size stencil-size buffer-size &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %make-gl-context-shared-with-current-context ((host api-2) &key current-gl-context surface version double-buffer alpha-size red-size green-size blue-size depth-size stencil-size buffer-size &allow-other-keys)
Source

host/api-2.lisp.

Method: %make-gl-context-shared-with-current-context ((host api-1) &key &allow-other-keys)
Source

host/api-1.lisp.

Method: %make-gl-context-shared-with-current-context ((host api-0) &key &allow-other-keys)
Source

host/api-0.lisp.

Generic Function: %make-surface (host &rest args &key width height title fullscreen no-frame alpha-size red-size green-size blue-size depth-size stencil-size buffer-size double-buffer hidden resizable &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %make-surface ((host api-1) &key width height title fullscreen no-frame alpha-size red-size green-size blue-size depth-size stencil-size buffer-size double-buffer hidden resizable &allow-other-keys)
Source

host/api-1.lisp.

Method: %make-surface ((host api-0) &rest args &key &allow-other-keys)
Source

host/api-0.lisp.

Generic Function: %recompile-gpu-function-and-pipelines (key)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: %recompile-gpu-function-and-pipelines ((key func-key))

Recompile all pipelines that depend on the named gpu function or any other gpu function that depends on the named gpu function. It does this by doing the following:

[0] Recursively call this function on all gpu functions that use the gpu function named in the argument

[1] Trigger a recompile on all pipelines that depend on this gpu function

Source

core/pipelines/gpu-functions.lisp.

Method: %recompile-gpu-function-and-pipelines (key)
Source

core/pipelines/gpu-functions.lisp.

Generic Function: %set-surface-fullscreen (host surface state &key &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %set-surface-fullscreen (host surface state &key &allow-other-keys)
Source

host/api-common.lisp.

Method: %set-surface-fullscreen ((host api-1) surface state &key &allow-other-keys)
Source

host/api-1.lisp.

Method: %set-surface-fullscreen ((host api-0) surface state &key &allow-other-keys)
Source

host/api-0.lisp.

Generic Function: %set-surface-size (host surface width height &key &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %set-surface-size (host surface width height &key &allow-other-keys)
Source

host/api-common.lisp.

Method: %set-surface-size ((host api-1) surface width height &key &allow-other-keys)
Source

host/api-1.lisp.

Method: %set-surface-size ((host api-0) surface width height &key &allow-other-keys)
Source

host/api-0.lisp.

Generic Function: %set-surface-title (host surface title &key &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %set-surface-title (host surface title &key &allow-other-keys)
Source

host/api-common.lisp.

Method: %set-surface-title ((host api-1) surface title &key &allow-other-keys)
Source

host/api-1.lisp.

Method: %set-surface-title ((host api-0) surface title &key &allow-other-keys)
Source

host/api-0.lisp.

Generic Function: %shutdown (host &key &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %shutdown ((host api-1) &key &allow-other-keys)
Source

host/api-1.lisp.

Method: %shutdown ((host api-0) &key &allow-other-keys)
Source

host/api-0.lisp.

Generic Function: %subscribe-to-gpu-func (func subscribe-to)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: %subscribe-to-gpu-func (func subscribe-to)

As the name would suggest this makes one function dependent on another It is used by #’%test-&-process-spec via #’%update-gpu-function-data

Source

core/pipelines/gpu-functions.lisp.

Generic Function: %supports-multiple-contexts-p (host &key &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %supports-multiple-contexts-p (host &key &allow-other-keys)
Source

host/api-common.lisp.

Method: %supports-multiple-contexts-p ((host api-1) &key &allow-other-keys)
Source

host/api-1.lisp.

Generic Function: %supports-multiple-surfaces-p (host &key &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %supports-multiple-surfaces-p (host &key &allow-other-keys)
Source

host/api-common.lisp.

Method: %supports-multiple-surfaces-p ((host api-1) &key &allow-other-keys)
Source

host/api-1.lisp.

Generic Function: %surface-fullscreen-p (host surface &key &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %surface-fullscreen-p (host surface &key &allow-other-keys)
Source

host/api-common.lisp.

Method: %surface-fullscreen-p ((host api-1) surface &key &allow-other-keys)
Source

host/api-1.lisp.

Method: %surface-fullscreen-p ((host api-0) surface &key &allow-other-keys)
Source

host/api-0.lisp.

Generic Function: %surface-title (host surface &key &allow-other-keys)
Package

cepl.host.

Source

host/api-generics.lisp.

Methods
Method: %surface-title (host surface &key &allow-other-keys)
Source

host/api-common.lisp.

Method: %surface-title ((host api-1) surface &key &allow-other-keys)
Source

host/api-1.lisp.

Method: %surface-title ((host api-0) surface &key &allow-other-keys)
Source

host/api-0.lisp.

Generic Function: %unsubscibe-from-all (spec)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: %unsubscibe-from-all ((func-key func-key))

As the name would suggest this removes one function’s dependency on another It is used by #’%test-&-process-spec via #’%update-gpu-function-data

Source

core/pipelines/gpu-pipeline-base.lisp.

Method: %unsubscibe-from-all (spec)
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Reader: always-uploadp (object)
Package

cepl.pipelines.

Methods
Reader Method: always-uploadp ((assigner assigner))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

always-uploadp.

Generic Writer: (setf always-uploadp) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf always-uploadp) ((assigner assigner))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

always-uploadp.

Generic Reader: arg-name (object)
Package

cepl.pipelines.

Methods
Reader Method: arg-name ((assigner assigner))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

arg-name.

Generic Writer: (setf arg-name) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf arg-name) ((assigner assigner))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

arg-name.

Generic Reader: assigner-body (object)
Package

cepl.pipelines.

Methods
Reader Method: assigner-body ((assigner-let-form assigner-let-form))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

body.

Generic Writer: (setf assigner-body) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf assigner-body) ((assigner-let-form assigner-let-form))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

body.

Generic Reader: assigner-index (object)
Package

cepl.pipelines.

Methods
Reader Method: assigner-index ((assigner-let-form assigner-let-form))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

index.

Generic Writer: (setf assigner-index) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf assigner-index) ((assigner-let-form assigner-let-form))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

index.

Generic Reader: assigner-name (object)
Package

cepl.pipelines.

Methods
Reader Method: assigner-name ((assigner-let-form assigner-let-form))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

name.

Generic Writer: (setf assigner-name) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf assigner-name) ((assigner-let-form assigner-let-form))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

name.

Generic Reader: assigner-type (object)
Package

cepl.pipelines.

Methods
Reader Method: assigner-type ((assigner-let-form assigner-let-form))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

type.

Generic Writer: (setf assigner-type) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf assigner-type) ((assigner-let-form assigner-let-form))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

type.

Generic Function: check-host (host)
Package

cepl.host.

Source

host/api-api.lisp.

Methods
Method: check-host ((host api-2))
Source

host/api-2.lisp.

Method: check-host ((host api-1))
Source

host/api-1.lisp.

Method: check-host ((host api-0))
Source

host/api-0.lisp.

Method: check-host (host)
Generic Function: check-mipmap-level-count-valid (level-count dimensions)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Methods
Method: check-mipmap-level-count-valid ((level-count integer) (dimensions list))
Generic Reader: cleanup (object)
Package

cepl.pipelines.

Methods
Reader Method: cleanup ((assigner assigner))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

cleanup.

Generic Writer: (setf cleanup) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf cleanup) ((assigner assigner))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

cleanup.

Generic Function: delete-func-spec (func-key)
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Methods
Method: delete-func-spec (func-key)
Generic Function: draw-buffer-i (context buffer-num)
Package

cepl.context.

Source

core/context/gl-context.lisp.

Methods
Method: draw-buffer-i ((context gl-context) (buffer-num integer))
Generic Function: func-key (source)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: func-key ((key func-key))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: func-key ((spec external-function))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: func-key ((spec gpu-func-spec))
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: func-key->name (key)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: func-key->name ((key func-key))
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: func-key= (x y)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: func-key= (x y)
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: func-key= ((x func-key) y)
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: func-key= (x (y func-key))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: func-key= ((x func-key) (y func-key))
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: funcs-that-use-this-func (key)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: funcs-that-use-this-func ((key func-key))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: funcs-that-use-this-func (key)
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: (setf funcs-that-use-this-func) (key)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: (setf funcs-that-use-this-func) ((key func-key))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: (setf funcs-that-use-this-func) (key)
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: gen-cleanup-block (assigners)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: gen-cleanup-block ((assigner assigner))
Source

core/pipelines/uniform-assigners-generation.lisp.

Generic Function: gen-uploaders-block (assigners)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: gen-uploaders-block ((assigner assigner))
Source

core/pipelines/uniform-assigners-generation.lisp.

Generic Function: gpu-func-spec (key &optional error-if-missing)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: gpu-func-spec ((func-key func-key) &optional error-if-missing)
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: gpu-func-spec ((func-key gpu-func-spec) &optional error-if-missing)
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: gpu-func-spec (key &optional error-if-missing)
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: (setf gpu-func-spec) (func-key &optional error-if-missing)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: (setf gpu-func-spec) ((key func-key) &optional error-if-missing)
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: (setf gpu-func-spec) (key &optional error-if-missing)
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Reader: handle (object)
Package

cepl.context.

Methods
Reader Method: handle ((gl-context gl-context))

automatically generated reader method

Source

core/context/gl-context.lisp.

Target Slot

handle.

Generic Function: handle-defn-declaration (name %func-name args)
Package

cepl.defn.

Source

defn/defn.lisp.

Methods
Method: handle-defn-declaration (name %func-name args)
Generic Reader: in-args (object)
Package

cepl.pipelines.

Methods
Reader Method: in-args ((func-key func-key))

automatically generated reader method

Source

core/pipelines/gpu-pipeline-base.lisp.

Target Slot

in-arg-types.

Generic Function: infer-implicit-uniform-type (thing)
Package

cepl.pipelines.

Source

core/pipelines/gpu-functions.lisp.

Methods
Method: infer-implicit-uniform-type (thing)
Generic Function: lambda-g->func-spec (lambda-g)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: lambda-g->func-spec ((lambda-g function))
Source

core/pipelines/gpu-lambda.lisp.

Generic Reader: let-forms (object)
Package

cepl.pipelines.

Methods
Reader Method: let-forms ((assigner assigner))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

let-forms.

Generic Writer: (setf let-forms) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf let-forms) ((assigner assigner))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

let-forms.

Generic Reader: local-arg-name (object)
Package

cepl.pipelines.

Methods
Reader Method: local-arg-name ((assigner assigner))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

local-arg-name.

Generic Writer: (setf local-arg-name) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf local-arg-name) ((assigner assigner))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

local-arg-name.

Generic Function: pipeline-stage-pairs (spec)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: pipeline-stage-pairs ((spec pipeline-spec-base))
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: pipeline-stages (spec)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: pipeline-stages ((spec pipeline-spec-base))
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: pipelines-that-use-this-as-a-stage (func-key)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Generic Function: pixel-format-from-array (array)
Package

cepl.textures.

Source

core/textures/textures.lisp.

Methods
Method: pixel-format-from-array ((arr c-array))
Method: pixel-format-from-array ((arr gpu-array-bb))
Generic Reader: pointer-arg (object)
Package

cepl.pipelines.

Methods
Reader Method: pointer-arg ((assigner assigner))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

pointer-arg.

Generic Writer: (setf pointer-arg) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf pointer-arg) ((assigner assigner))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

pointer-arg.

Generic Function: recompile-pipelines-that-use-this-as-a-stage (key)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: recompile-pipelines-that-use-this-as-a-stage ((key func-key))

Recompile all pipelines that depend on the named gpu function or any other gpu function that depends on the named gpu function. It does this by triggering a recompile on all pipelines that depend on this glsl-stage

Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: s-arrayp (object)
Package

cepl.types.

Source

core/types/structs.lisp.

Methods
Method: s-arrayp ((object gl-struct-slot))
Generic Function: s-def (object)
Package

cepl.types.

Source

core/types/structs.lisp.

Methods
Method: s-def ((object gl-struct-slot))
Generic Reader: s-dimensions (object)
Package

cepl.types.

Methods
Reader Method: s-dimensions ((gl-struct-slot gl-struct-slot))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

dimensions.

Generic Reader: s-element-type (object)
Package

cepl.types.

Methods
Reader Method: s-element-type ((gl-struct-slot gl-struct-slot))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

element-type.

Generic Reader: s-foreign-name (object)
Package

cepl.types.

Methods
Reader Method: s-foreign-name ((cepl-struct-definition cepl-struct-definition))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

foreign-name.

Generic Reader: s-layout (object)
Package

cepl.types.

Methods
Reader Method: s-layout ((gl-struct-slot gl-struct-slot))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

layout.

Reader Method: s-layout ((cepl-struct-definition cepl-struct-definition))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

layout.

Generic Reader: s-name (object)
Package

cepl.types.

Methods
Reader Method: s-name ((gl-struct-slot gl-struct-slot))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

name.

Reader Method: s-name ((cepl-struct-definition cepl-struct-definition))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

name.

Generic Reader: s-normalizedp (object)
Package

cepl.types.

Methods
Reader Method: s-normalizedp ((gl-struct-slot gl-struct-slot))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

normalized.

Generic Reader: s-parent-ffi-name (object)
Package

cepl.types.

Methods
Reader Method: s-parent-ffi-name ((gl-struct-slot gl-struct-slot))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

parent-ffi-name.

Generic Reader: s-reader (object)
Package

cepl.types.

Methods
Reader Method: s-reader ((gl-struct-slot gl-struct-slot))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

reader.

Generic Function: s-slot-args (slot args)
Package

cepl.types.

Source

core/types/structs.lisp.

Methods
Method: s-slot-args ((slot gl-struct-slot) (args list))
Generic Reader: s-slots (object)
Package

cepl.types.

Methods
Reader Method: s-slots ((cepl-struct-definition cepl-struct-definition))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

slots.

Generic Reader: s-type (object)
Package

cepl.types.

Methods
Reader Method: s-type ((gl-struct-slot gl-struct-slot))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

type.

Generic Reader: s-uses-method-p (object)
Package

cepl.types.

Methods
Reader Method: s-uses-method-p ((gl-struct-slot gl-struct-slot))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

uses-method-p.

Generic Reader: s-writer (object)
Package

cepl.types.

Methods
Reader Method: s-writer ((gl-struct-slot gl-struct-slot))

automatically generated reader method

Source

core/types/structs.lisp.

Target Slot

writer.

Generic Function: set-primary-thread-and-run (func &rest args)

This will be called from the UI thread (if required by the OS) Implement and use this if you need to do some setup from that thread

Package

cepl.host.

Source

host/api-0.lisp.

Generic Function: spec->func-key (spec)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: spec->func-key ((spec func-key))
Source

core/pipelines/gpu-pipeline-base.lisp.

Method: spec->func-key ((spec gpu-func-spec))
Source

core/pipelines/gpu-pipeline-base.lisp.

Generic Function: unpack-arrayd-assigner (assigner)
Package

cepl.pipelines.

Source

core/pipelines/generics.lisp.

Methods
Method: unpack-arrayd-assigner ((assigner assigner))
Source

core/pipelines/uniform-assigners-generation.lisp.

Generic Reader: uploaders (object)
Package

cepl.pipelines.

Methods
Reader Method: uploaders ((assigner assigner))

automatically generated reader method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

uploaders.

Generic Writer: (setf uploaders) (object)
Package

cepl.pipelines.

Methods
Writer Method: (setf uploaders) ((assigner assigner))

automatically generated writer method

Source

core/pipelines/uniform-assigners-generation.lisp.

Target Slot

uploaders.


5.2.7 Standalone methods

Writer Method: (setf v-signature) ((v_elements-indirect-command v_elements-indirect-command))

automatically generated writer method

Package

varjo.internals.

Source

core/pipelines/multi-draw.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_elements-indirect-command v_elements-indirect-command))

automatically generated reader method

Package

varjo.internals.

Source

core/pipelines/multi-draw.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_arrays-indirect-command v_arrays-indirect-command))

automatically generated writer method

Package

varjo.internals.

Source

core/pipelines/multi-draw.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_arrays-indirect-command v_arrays-indirect-command))

automatically generated reader method

Package

varjo.internals.

Source

core/pipelines/multi-draw.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_g-pnt v_g-pnt))

automatically generated writer method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_g-pnt v_g-pnt))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_g-pncb v_g-pncb))

automatically generated writer method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_g-pncb v_g-pncb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_g-pnb v_g-pnb))

automatically generated writer method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_g-pnb v_g-pnb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_g-pntc v_g-pntc))

automatically generated writer method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_g-pntc v_g-pntc))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_g-pt v_g-pt))

automatically generated writer method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_g-pt v_g-pt))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_g-pntcb v_g-pntcb))

automatically generated writer method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_g-pntcb v_g-pntcb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_g-pc v_g-pc))

automatically generated writer method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_g-pc v_g-pc))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_g-pntb v_g-pntb))

automatically generated writer method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_g-pntb v_g-pntb))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_g-pn v_g-pn))

automatically generated writer method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_g-pn v_g-pn))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Writer Method: (setf v-signature) ((v_g-pnc v_g-pnc))

automatically generated writer method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.

Reader Method: v-signature ((v_g-pnc v_g-pnc))

automatically generated reader method

Package

varjo.internals.

Source

core/types/predefined/gpu-structs.lisp.

Target Slot

signature.


5.2.8 Conditions

Condition: c-array-4d-limit
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Direct superclasses

error.

Direct slots
Slot: dimensions
Package

cepl.measurements.

Initargs

:dimensions

Condition: c-array-4d-limit-aref
Package

cepl.c-arrays.

Source

core/c-arrays/aref-c.lisp.

Direct superclasses

error.

Direct slots
Slot: c-arr
Initargs

:c-arr

Slot: indices
Initargs

:indices

Condition: gl-version-too-low-for-empty-fbos
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: version
Initargs

:version

Condition: invalid-fbo-args
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.

Direct slots
Slot: args
Initargs

:args

Condition: make-project-needs-quickproject
Package

cepl.

Source

project.lisp.

Direct superclasses

error.

Condition: make-project-no-such-dir
Package

cepl.

Source

project.lisp.

Direct superclasses

error.

Direct slots
Slot: dir
Initargs

:dir

Condition: make-ssbo-from-array-bad-type
Package

cepl.ssbos.

Source

core/ssbos/ssbos.lisp.

Direct superclasses

error.

Direct slots
Slot: data
Initargs

:data

Slot: element-type
Package

cepl.types.

Initargs

:element-type

Condition: make-ubo-from-array-bad-type
Package

cepl.ubos.

Source

core/ubos/ubo.lisp.

Direct superclasses

error.

Direct slots
Slot: data
Initargs

:data

Slot: element-type
Package

cepl.types.

Initargs

:element-type

Condition: state-restore-limitation-queries
Package

cepl.errors.

Source

core/errors.lisp.

Direct superclasses

error.


5.2.9 Structures

Structure: base-gstruct-wrapper
Package

cepl.types.

Source

core/types/structs.lisp.

Direct superclasses

structure-object.

Direct subclasses
Direct methods
Direct slots
Slot: pointer
Type

cffi-sys:foreign-pointer

Initform

(cffi-sys:null-pointer)

Readers

base-gstruct-wrapper-pointer.

Writers

(setf base-gstruct-wrapper-pointer).

Structure: boop6
Package

defxstar-hidden.

Source

core/utils.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: boop-x
Readers

boop-x.

Writers

(setf boop-x).

Slot: boop-y
Readers

boop-y.

Writers

(setf boop-y).

Structure: delayed
Package

cepl.context.

Source

core/context/delayed-resource-init.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: waiting-on
Type

list

Readers

delayed-waiting-on.

Writers

(setf delayed-waiting-on).

Slot: thunk
Type

function

Initform

(error "delayed must have a constructor thunk")

Readers

delayed-thunk.

Writers

(setf delayed-thunk).

Structure: glambda-state
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: pipeline
Type

function

Initform

(error "bug")

Readers

glambda-state-pipeline.

Writers

(setf glambda-state-pipeline).

Slot: recompiler
Type

(or null function)

Readers

glambda-state-recompiler.

Writers

(setf glambda-state-recompiler).

Slot: spec
Type

(or null cepl.pipelines::lambda-pipeline-spec)

Readers

glambda-state-spec.

Writers

(setf glambda-state-spec).

Structure: pipeline-state
Package

cepl.pipelines.

Source

core/pipelines/defpipeline.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: diff-tag
Type

(unsigned-byte 16)

Initform

0

Readers

pipeline-state-diff-tag.

Writers

(setf pipeline-state-diff-tag).

Slot: prog-ids
Type

(simple-array %cepl.types:gl-id (8))

Initform

(make-array cepl.context:+max-context-count+ :initial-element %cepl.types:+unknown-gl-id+ :element-type (quote %cepl.types:gl-id))

Readers

pipeline-state-prog-ids.

Writers

(setf pipeline-state-prog-ids).

Slot: implicit-uniform-upload-func
Type

function

Initform

(function cepl.pipelines::fallback-iuniform-func)

Readers

pipeline-state-implicit-uniform-upload-func.

Writers

(setf pipeline-state-implicit-uniform-upload-func).

Slot: tfs-primitive
Type

symbol

Readers

pipeline-state-tfs-primitive.

Writers

(setf pipeline-state-tfs-primitive).

Slot: tfs-array-count
Type

(unsigned-byte 8)

Initform

0

Readers

pipeline-state-tfs-array-count.

Writers

(setf pipeline-state-tfs-array-count).

Slot: enable-rasterizer
Type

boolean

Initform

t

Readers

pipeline-state-enable-rasterizer.

Writers

(setf pipeline-state-enable-rasterizer).

Slot: uniform-int-ids
Type

(array (signed-byte 32) (*))

Initform

(make-array 100 :element-type (quote (signed-byte 32)) :initial-element cepl.pipelines::+unknown-uniform-int-id+)

Readers

pipeline-state-uniform-int-ids.

Writers

(setf pipeline-state-uniform-int-ids).

Slot: uniform-uint-ids
Type

(array (unsigned-byte 32) (*))

Initform

(make-array 100 :element-type (quote (unsigned-byte 32)) :initial-element cepl.pipelines::+unknown-uniform-uint-id+)

Readers

pipeline-state-uniform-uint-ids.

Writers

(setf pipeline-state-uniform-uint-ids).

Structure: uidx
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: int
Package

glsl-symbols.types.

Initform

-1

Readers

uidx-int.

Writers

(setf uidx-int).

Slot: uint
Package

glsl-symbols.types.

Initform

-1

Readers

uidx-uint.

Writers

(setf uidx-uint).

Structure: unbound-cepl-context
Package

cepl.context.

Source

core/context/types.lisp.

Direct superclasses

structure-object.

Direct slots
Slot: consumed
Type

boolean

Readers

unbound-cepl-context-consumed.

Writers

(setf unbound-cepl-context-consumed).

Slot: gl-context
Type

cepl.context:gl-context

Readers

unbound-cepl-context-gl-context.

Writers

(setf unbound-cepl-context-gl-context).

Slot: requested-gl-version
Readers

unbound-cepl-context-requested-gl-version.

Writers

(setf unbound-cepl-context-requested-gl-version).

Slot: shared
Type

cepl.context:cepl-context

Readers

unbound-cepl-context-shared.

Writers

(setf unbound-cepl-context-shared).

Slot: surface
Readers

unbound-cepl-context-surface.

Writers

(setf unbound-cepl-context-surface).

Slot: surfaces
Type

list

Readers

unbound-cepl-context-surfaces.

Writers

(setf unbound-cepl-context-surfaces).


5.2.10 Classes

Class: api-0
Package

cepl.host.

Source

host/api-0.lisp.

Direct superclasses

cepl-host-api.

Direct methods
Class: assigner
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Direct methods
Direct slots
Slot: let-forms
Initargs

:let-forms

Readers

let-forms.

Writers

(setf let-forms).

Slot: uploaders
Initargs

:uploaders

Readers

uploaders.

Writers

(setf uploaders).

Slot: pointer-arg
Initargs

:pointer-arg

Readers

pointer-arg.

Writers

(setf pointer-arg).

Slot: arg-name
Initargs

:arg-name

Readers

arg-name.

Writers

(setf arg-name).

Slot: local-arg-name
Initargs

:local-arg-name

Readers

local-arg-name.

Writers

(setf local-arg-name).

Slot: cleanup
Initargs

:cleanup

Readers

cleanup.

Writers

(setf cleanup).

Slot: always-uploadp
Initargs

:always-uploadp

Readers

always-uploadp.

Writers

(setf always-uploadp).

Class: assigner-let-form
Package

cepl.pipelines.

Source

core/pipelines/uniform-assigners-generation.lisp.

Direct methods
Direct slots
Slot: index
Initargs

:index

Readers

assigner-index.

Writers

(setf assigner-index).

Slot: type
Package

common-lisp.

Initargs

:type

Readers

assigner-type.

Writers

(setf assigner-type).

Slot: name
Package

varjo.internals.

Initargs

:name

Readers

assigner-name.

Writers

(setf assigner-name).

Slot: body
Initargs

:body

Readers

assigner-body.

Writers

(setf assigner-body).

Class: cepl-host-api
Package

cepl.host.

Source

host/api-api.lisp.

Direct subclasses
Class: cepl-struct-definition
Package

cepl.types.

Source

core/types/structs.lisp.

Direct methods
Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Readers

s-name.

Writers

This slot is read-only.

Slot: foreign-name
Initargs

:foreign-name

Readers

s-foreign-name.

Writers

This slot is read-only.

Slot: layout
Initargs

:layout

Readers

s-layout.

Writers

This slot is read-only.

Slot: slots
Initargs

:slots

Readers

s-slots.

Writers

This slot is read-only.

Class: cepl.pipelines.arrays-indirect-command.cffi-ct-type
Package

cepl.hidden.

Source

core/pipelines/multi-draw.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.pipelines.arrays-indirect-command.foreign))
Class: cepl.pipelines.arrays-indirect-command.foreign-tclass
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.pipelines.elements-indirect-command.cffi-ct-type
Package

cepl.hidden.

Source

core/pipelines/multi-draw.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.pipelines.elements-indirect-command.foreign))
Class: cepl.pipelines.elements-indirect-command.foreign-tclass
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.types.predefined.g-pc.cffi-ct-type
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.types.predefined.g-pc.foreign))
Class: cepl.types.predefined.g-pc.foreign-tclass
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.types.predefined.g-pn.cffi-ct-type
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.types.predefined.g-pn.foreign))
Class: cepl.types.predefined.g-pn.foreign-tclass
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.types.predefined.g-pnb.cffi-ct-type
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.types.predefined.g-pnb.foreign))
Class: cepl.types.predefined.g-pnb.foreign-tclass
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.types.predefined.g-pnc.cffi-ct-type
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.types.predefined.g-pnc.foreign))
Class: cepl.types.predefined.g-pnc.foreign-tclass
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.types.predefined.g-pncb.cffi-ct-type
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.types.predefined.g-pncb.foreign))
Class: cepl.types.predefined.g-pncb.foreign-tclass
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.types.predefined.g-pnt.cffi-ct-type
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.types.predefined.g-pnt.foreign))
Class: cepl.types.predefined.g-pnt.foreign-tclass
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.types.predefined.g-pntb.cffi-ct-type
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.types.predefined.g-pntb.foreign))
Class: cepl.types.predefined.g-pntb.foreign-tclass
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.types.predefined.g-pntc.cffi-ct-type
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.types.predefined.g-pntc.foreign))
Class: cepl.types.predefined.g-pntc.foreign-tclass
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.types.predefined.g-pntcb.cffi-ct-type
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.types.predefined.g-pntcb.foreign))
Class: cepl.types.predefined.g-pntcb.foreign-tclass
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: cepl.types.predefined.g-pt.cffi-ct-type
Package

cepl.hidden.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (struct cepl.types.predefined.g-pt.foreign))
Class: cepl.types.predefined.g-pt.foreign-tclass
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses
  • foreign-struct-type.
  • translatable-foreign-type.
Class: func-key
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Direct methods
Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Readers

name.

Writers

This slot is read-only.

Slot: in-arg-types
Initargs

:types

Readers

in-args.

Writers

This slot is read-only.

Class: gl-layout
Package

%cepl.types.

Source

core/types/layout.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Readers

layout-name.

Writers

This slot is read-only.

Slot: varjo-type
Initargs

:type

Readers

layout-varjo-type.

Writers

This slot is read-only.

Slot: base-offset
Initargs

:base-offset

Readers

layout-base-offset.

Writers

This slot is read-only.

Slot: base-alignment
Initargs

:base-alignment

Readers

layout-base-alignment.

Writers

This slot is read-only.

Slot: aligned-offset
Initargs

:aligned-offset

Readers

layout-aligned-offset.

Writers

This slot is read-only.

Slot: machine-unit-size
Initargs

:machine-unit-size

Readers

layout-machine-unit-size.

Writers

This slot is read-only.

Slot: members
Initargs

:members

Readers

layout-members.

Writers

This slot is read-only.

Slot: element-layout
Initargs

:element-layout

Readers

layout-element-layout.

Writers

This slot is read-only.

Class: gl-struct-slot
Package

cepl.types.

Source

core/types/structs.lisp.

Direct methods
Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Readers

s-name.

Writers

This slot is read-only.

Slot: type
Package

common-lisp.

Initargs

:type

Readers

s-type.

Writers

This slot is read-only.

Slot: element-type
Initargs

:element-type

Readers

s-element-type.

Writers

This slot is read-only.

Slot: dimensions
Initform

1

Initargs

:dimensions

Readers

s-dimensions.

Writers

This slot is read-only.

Slot: normalized
Initargs

:normalized

Readers

s-normalizedp.

Writers

This slot is read-only.

Slot: reader
Initargs

:reader

Readers

s-reader.

Writers

This slot is read-only.

Slot: writer
Initargs

:writer

Readers

s-writer.

Writers

This slot is read-only.

Slot: uses-method-p
Initargs

:uses-method-p

Readers

s-uses-method-p.

Writers

This slot is read-only.

Slot: layout
Initargs

:layout

Readers

s-layout.

Writers

This slot is read-only.

Slot: parent-ffi-name
Initargs

:parent-ffi-name

Readers

s-parent-ffi-name.

Writers

This slot is read-only.

Class: glsl-stage-spec
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Direct superclasses

gpu-func-spec.

Class: gpu-func-spec
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Direct subclasses

glsl-stage-spec.

Direct methods
Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: in-args
Initargs

:in-args

Slot: uniforms
Initargs

:uniforms

Slot: actual-uniforms
Initargs

:actual-uniforms

Slot: context
Package

varjo.internals.

Initargs

:context

Slot: body
Initargs

:body

Slot: shared
Initargs

:shared

Slot: equivalent-inargs
Initargs

:equivalent-inargs

Slot: equivalent-uniforms
Initargs

:equivalent-uniforms

Slot: doc-string
Initargs

:doc-string

Slot: declarations
Initargs

:declarations

Slot: missing-dependencies
Initargs

:missing-dependencies

Slot: cached-compile-results
Initargs

:compiled

Slot: diff-tag
Initargs

:diff-tag

Class: gpu-lambda-state
Package

cepl.pipelines.

Source

core/pipelines/gpu-lambda.lisp.

Direct methods

initialize-instance.

Direct slots
Slot: in-args
Initargs

:in-args

Slot: uniforms
Initargs

:uniforms

Slot: body
Initargs

:body

Slot: shared
Initargs

:shared

Slot: doc-string
Initargs

:doc-string

Slot: declarations
Initargs

:declarations

Slot: context
Package

varjo.internals.

Initargs

:context

Slot: func-spec
Initargs

:func-spec

Class: lambda-pipeline-spec
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Direct superclasses

pipeline-spec-base.

Direct slots
Slot: vertex-stage
Package

varjo.internals.

Initargs

:vertex-stage

Slot: recompile-func
Initargs

:recompile-func

Slot: recompile-state
Initargs

:recompile-state

Class: pending-surface
Package

cepl.context.

Source

core/context/types.lisp.

Direct slots
Slot: title
Initargs

:title

Slot: width
Initargs

:width

Slot: height
Initargs

:height

Slot: fullscreen
Initargs

:fullscreen

Slot: resizable
Initargs

:resizable

Slot: no-frame
Initargs

:no-frame

Slot: hidden
Initargs

:hidden

Slot: legacy-gl-version
Initargs

:legacy-gl-version

Class: pipeline-spec
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Direct superclasses

pipeline-spec-base.

Direct slots
Slot: name
Package

varjo.internals.

Initargs

:name

Slot: context
Package

varjo.internals.

Initargs

:context

Slot: diff-tags
Initargs

:diff-tags

Class: pipeline-spec-base
Package

cepl.pipelines.

Source

core/pipelines/gpu-pipeline-base.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: prog-ids
Initargs

:prog-ids

Slot: cached-compile-results
Initargs

:cached-compile-results

Slot: vertex-stage
Package

varjo.internals.

Initargs

:vertex-stage

Slot: tessellation-control-stage
Package

varjo.internals.

Initargs

:tessellation-control-stage

Slot: tessellation-evaluation-stage
Package

varjo.internals.

Initargs

:tessellation-evaluation-stage

Slot: geometry-stage
Package

varjo.internals.

Initargs

:geometry-stage

Slot: fragment-stage
Package

varjo.internals.

Initargs

:fragment-stage

Slot: compute-stage
Package

varjo.internals.

Initargs

:compute-stage

Class: v_arrays-indirect-command
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.pipelines::v_arrays-indirect-command)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"arrays_indirect_command"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct arrays_indirect_command { uint count; uint instance_count; uint first; uint base_instance; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((count #<vari.types:v-uint {1005c54c23}> cepl.pipelines:arrays-indirect-command-count "~a.count") (cepl.pipelines:instance-count #<vari.types:v-uint {1005c54c33}> cepl.pipelines:arrays-indirect-command-instance-count "~a.instance_count") (first #<vari.types:v-uint {1005c54c43}> cepl.pipelines:arrays-indirect-command-first "~a.first") (cepl.pipelines:base-instance #<vari.types:v-uint {1005c54c53}> cepl.pipelines:arrays-indirect-command-base-instance "~a.base_instance")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_elements-indirect-command
Package

cepl.pipelines.

Source

core/pipelines/multi-draw.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.pipelines::v_elements-indirect-command)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"elements_indirect_command"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct elements_indirect_command { uint count; uint instance_count; uint first_index; uint base_vertex; uint base_instance; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((count #<vari.types:v-uint {1005c54c63}> cepl.pipelines:elements-indirect-command-count "~a.count") (cepl.pipelines:instance-count #<vari.types:v-uint {1005c54c73}> cepl.pipelines:elements-indirect-command-instance-count "~a.instance_count") (cepl.pipelines:first-index #<vari.types:v-uint {1005c54c83}> cepl.pipelines:elements-indirect-command-first-index "~a.first_index") (cepl.pipelines:base-vertex #<vari.types:v-uint {1005c54c93}> cepl.pipelines:elements-indirect-command-base-vertex "~a.base_vertex") (cepl.pipelines:base-instance #<vari.types:v-uint {1005c54ca3}> cepl.pipelines:elements-indirect-command-base-instance "~a.base_instance")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_g-pc
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.types.predefined::v_g-pc)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"g_pc"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct g_pc { vec3 position; vec4 color; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((position #<vari.types:v-vec3 {1002b69c23}> cepl.types.predefined:pos "~a.position") (cepl.types.predefined::color #<vari.types:v-vec4 {1002b69c33}> cepl.types.predefined:col "~a.color")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_g-pn
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.types.predefined::v_g-pn)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"g_pn"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct g_pn { vec3 position; vec3 normal; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((position #<vari.types:v-vec3 {1002b69c43}> cepl.types.predefined:pos "~a.position") (cepl.types.predefined::normal #<vari.types:v-vec3 {1002b69c53}> cepl.types.predefined:norm "~a.normal")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_g-pnb
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.types.predefined::v_g-pnb)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"g_pnb"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct g_pnb { vec3 position; vec3 normal; vec3 tangent; vec3 bi_tangent; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((position #<vari.types:v-vec3 {1002b69b23}> cepl.types.predefined:pos "~a.position") (cepl.types.predefined::normal #<vari.types:v-vec3 {1002b69b33}> cepl.types.predefined:norm "~a.normal") (cepl.types.predefined:tangent #<vari.types:v-vec3 {1002b69b43}> cepl.types.predefined:tangent "~a.tangent") (cepl.types.predefined:bi-tangent #<vari.types:v-vec3 {1002b69b53}> cepl.types.predefined:bi-tangent "~a.bi_tangent")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_g-pnc
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.types.predefined::v_g-pnc)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"g_pnc"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct g_pnc { vec3 position; vec3 normal; vec4 color; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((position #<vari.types:v-vec3 {1002b69bd3}> cepl.types.predefined:pos "~a.position") (cepl.types.predefined::normal #<vari.types:v-vec3 {1002b69be3}> cepl.types.predefined:norm "~a.normal") (cepl.types.predefined::color #<vari.types:v-vec4 {1002b69bf3}> cepl.types.predefined:col "~a.color")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_g-pncb
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.types.predefined::v_g-pncb)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"g_pncb"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct g_pncb { vec3 position; vec3 normal; vec3 tangent; vec3 bi_tangent; vec4 color; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((position #<vari.types:v-vec3 {1002b69ad3}> cepl.types.predefined:pos "~a.position") (cepl.types.predefined::normal #<vari.types:v-vec3 {1002b69ae3}> cepl.types.predefined:norm "~a.normal") (cepl.types.predefined:tangent #<vari.types:v-vec3 {1002b69af3}> cepl.types.predefined:tangent "~a.tangent") (cepl.types.predefined:bi-tangent #<vari.types:v-vec3 {1002b69b03}> cepl.types.predefined:bi-tangent "~a.bi_tangent") (cepl.types.predefined::color #<vari.types:v-vec4 {1002b69b13}> cepl.types.predefined:col "~a.color")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_g-pnt
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.types.predefined::v_g-pnt)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"g_pnt"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct g_pnt { vec3 position; vec3 normal; vec2 texture; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((position #<vari.types:v-vec3 {1002b69ba3}> cepl.types.predefined:pos "~a.position") (cepl.types.predefined::normal #<vari.types:v-vec3 {1002b69bb3}> cepl.types.predefined:norm "~a.normal") (glsl-symbols.functions:texture #<vari.types:v-vec2 {1002b69bc3}> cepl.types.predefined:tex "~a.texture")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_g-pntb
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.types.predefined::v_g-pntb)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"g_pntb"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct g_pntb { vec3 position; vec3 normal; vec3 tangent; vec3 bi_tangent; vec2 texture; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((position #<vari.types:v-vec3 {1002b69a83}> cepl.types.predefined:pos "~a.position") (cepl.types.predefined::normal #<vari.types:v-vec3 {1002b69a93}> cepl.types.predefined:norm "~a.normal") (cepl.types.predefined:tangent #<vari.types:v-vec3 {1002b69aa3}> cepl.types.predefined:tangent "~a.tangent") (cepl.types.predefined:bi-tangent #<vari.types:v-vec3 {1002b69ab3}> cepl.types.predefined:bi-tangent "~a.bi_tangent") (glsl-symbols.functions:texture #<vari.types:v-vec2 {1002b69ac3}> cepl.types.predefined:tex "~a.texture")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_g-pntc
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.types.predefined::v_g-pntc)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"g_pntc"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct g_pntc { vec3 position; vec3 normal; vec2 texture; vec4 color; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((position #<vari.types:v-vec3 {1002b69b63}> cepl.types.predefined:pos "~a.position") (cepl.types.predefined::normal #<vari.types:v-vec3 {1002b69b73}> cepl.types.predefined:norm "~a.normal") (glsl-symbols.functions:texture #<vari.types:v-vec2 {1002b69b83}> cepl.types.predefined:tex "~a.texture") (cepl.types.predefined::color #<vari.types:v-vec4 {1002b69b93}> cepl.types.predefined:col "~a.color")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_g-pntcb
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.types.predefined::v_g-pntcb)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"g_pntcb"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct g_pntcb { vec3 position; vec3 normal; vec3 tangent; vec3 bi_tangent; vec2 texture; vec4 color; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((position #<vari.types:v-vec3 {1002b69a23}> cepl.types.predefined:pos "~a.position") (cepl.types.predefined::normal #<vari.types:v-vec3 {1002b69a33}> cepl.types.predefined:norm "~a.normal") (cepl.types.predefined:tangent #<vari.types:v-vec3 {1002b69a43}> cepl.types.predefined:tangent "~a.tangent") (cepl.types.predefined:bi-tangent #<vari.types:v-vec3 {1002b69a53}> cepl.types.predefined:bi-tangent "~a.bi_tangent") (glsl-symbols.functions:texture #<vari.types:v-vec2 {1002b69a63}> cepl.types.predefined:tex "~a.texture") (cepl.types.predefined::color #<vari.types:v-vec4 {1002b69a73}> cepl.types.predefined:col "~a.color")))

Readers

v-slots.

Writers

This slot is read-only.

Class: v_g-pt
Package

cepl.types.predefined.

Source

core/types/predefined/gpu-structs.lisp.

Direct superclasses

v-user-struct.

Direct methods
Direct slots
Slot: type-name
Package

varjo.internals.

Initform

(quote cepl.types.predefined::v_g-pt)

Slot: superclass
Package

varjo.internals.

Initform

(quote vari.types:v-user-struct)

Slot: glsl-string
Package

varjo.internals.

Initform

"g_pt"

Initargs

:glsl-string

Readers

v-glsl-string.

Writers

This slot is read-only.

Slot: signature
Package

varjo.internals.

Initform

"struct g_pt { vec3 position; vec2 texture; };"

Initargs

:signature

Readers

v-signature.

Writers

(setf v-signature).

Slot: slots
Package

varjo.internals.

Initform

(quote ((position #<vari.types:v-vec3 {1002b69c03}> cepl.types.predefined:pos "~a.position") (glsl-symbols.functions:texture #<vari.types:v-vec2 {1002b69c13}> cepl.types.predefined:tex "~a.texture")))

Readers

v-slots.

Writers

This slot is read-only.


5.2.11 Types

Type: clear-buffer-mask ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: elem-byte-size ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.

Type: gbuf-byte-size ()
Package

%cepl.types.

Source

core/types/cepl-types.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (   -   1  
A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Z  
Index Entry  Section

%
%%make-buffer-texture: Public ordinary functions
%%make-fbo: Public ordinary functions
%%make-texture: Public ordinary functions
%across-c-1d: Private ordinary functions
%across-c-2d: Private ordinary functions
%across-c-3d: Private ordinary functions
%across-c-4d: Private ordinary functions
%across-c-ptr-1d: Private ordinary functions
%across-c-ptr-2d: Private ordinary functions
%across-c-ptr-3d: Private ordinary functions
%across-c-ptr-4d: Private ordinary functions
%api-0-populate-singletons: Private ordinary functions
%apply-stencil-mask: Private ordinary functions
%apply-stencil-params: Private ordinary functions
%attachment: Private ordinary functions
%bind-fbo: Private ordinary functions
%bind-ssbo: Private ordinary functions
%bind-tfs-arrays: Private ordinary functions
%bind-ubo: Private ordinary functions
%blend-fbo: Private ordinary functions
%blend-i: Private ordinary functions
%blend-using-params: Private ordinary functions
%calc-image-format-with-declared-format: Private ordinary functions
%calc-image-format-with-lisp-type: Private ordinary functions
%calc-image-format-with-pixel-format: Private ordinary functions
%calc-image-format-without-declared-format: Private ordinary functions
%cepl-context-array-of-bound-gpu-buffers: Private ordinary functions
%cepl-context-array-of-bound-queries: Private ordinary functions
%cepl-context-array-of-bound-samplers: Private ordinary functions
%cepl-context-array-of-gpu-buffers: Private ordinary functions
%cepl-context-array-of-ssbo-binding-ranges: Private ordinary functions
%cepl-context-array-of-ssbo-bindings-buffer-ids: Private ordinary functions
%cepl-context-array-of-textures: Private ordinary functions
%cepl-context-array-of-transform-feedback-bindings-buffer-ids: Private ordinary functions
%cepl-context-array-of-ubo-binding-ranges: Private ordinary functions
%cepl-context-array-of-ubo-bindings-buffer-ids: Private ordinary functions
%cepl-context-bound-thread: Private ordinary functions
%cepl-context-clear-color: Private ordinary functions
%cepl-context-color-masks: Private ordinary functions
%cepl-context-cull-face: Private ordinary functions
%cepl-context-current-blend-params: Private ordinary functions
%cepl-context-current-draw-buffers-len: Private ordinary functions
%cepl-context-current-draw-buffers-ptr: Private ordinary functions
%cepl-context-current-program: Private ordinary functions
%cepl-context-current-scissor-viewports: Private ordinary functions
%cepl-context-current-stencil-mask-back: Private ordinary functions
%cepl-context-current-stencil-mask-front: Private ordinary functions
%cepl-context-current-stencil-params-back: Private ordinary functions
%cepl-context-current-stencil-params-front: Private ordinary functions
%cepl-context-current-surface: Private ordinary functions
%cepl-context-current-tfs: Private ordinary functions
%cepl-context-current-viewport: Private ordinary functions
%cepl-context-default-framebuffer: Private ordinary functions
%cepl-context-default-viewport: Private ordinary functions
%cepl-context-depth-clamp: Private ordinary functions
%cepl-context-depth-func: Private ordinary functions
%cepl-context-depth-mask: Private ordinary functions
%cepl-context-depth-range: Private ordinary functions
%cepl-context-draw-fbo-binding: Private ordinary functions
%cepl-context-fbos: Private ordinary functions
%cepl-context-front-face: Private ordinary functions
%cepl-context-gl-context: Private ordinary functions
%cepl-context-gl-version-float: Private ordinary functions
%cepl-context-id: Private ordinary functions
%cepl-context-instance-count: Private ordinary functions
%cepl-context-max-draw-buffer-count: Private ordinary functions
%cepl-context-pack-alignment: Private ordinary functions
%cepl-context-read-fbo-binding: Private ordinary functions
%cepl-context-requested-gl-version: Private ordinary functions
%cepl-context-shared: Private ordinary functions
%cepl-context-surfaces: Private ordinary functions
%cepl-context-uninitialized-resources: Private ordinary functions
%cepl-context-unpack-alignment: Private ordinary functions
%cepl-context-vao-binding-id: Private ordinary functions
%cffi-type->gl-enum: Private ordinary functions
%clear-attachments: Private ordinary functions
%clear-current-fbo: Private ordinary functions
%clear-fbo-known-attachments: Private ordinary functions
%clear-fbo-unknown-attachments: Private ordinary functions
%clear-fbo-with-explicit-attachments: Private ordinary functions
%clear-fbos-attachments: Private ordinary functions
%clear-known-attachments: Private ordinary functions
%clear-known-attachments-no-restore: Private ordinary functions
%clear-unknown-attachments: Private ordinary functions
%clear-unknown-attachments-no-restore: Private ordinary functions
%color-mask: Private ordinary functions
%color-masks: Private ordinary functions
%compile-closure: Private ordinary functions
%compile-link-and-upload: Private ordinary functions
%copy-compile-context: Private ordinary functions
%create-implicit-uniform-uploader: Private ordinary functions
%cull-face: Private ordinary functions
%current-blend-params: Private ordinary functions
%current-stencil-params: Private ordinary functions
%current-viewport: Private ordinary functions
%decode-half-float: Private ordinary functions
%def-complete-pipeline: Private ordinary functions
%def-gpu-function: Private ordinary functions
%def-partial-pipeline: Private ordinary functions
%defn: Private ordinary functions
%defpipeline-gfuncs: Private ordinary functions
%delete-sampler: Private ordinary functions
%depth-clamp: Private ordinary functions
%depth-mask: Private ordinary functions
%depth-range-vec2: Private ordinary functions
%depth-test-function: Private ordinary functions
%destroy-surface: Private generic functions
%destroy-surface: Private generic functions
%destroy-surface: Private generic functions
%destroy-surface: Private generic functions
%empty-fbo-params-dimensions: Public ordinary functions
%empty-fbo-params-fbo: Public ordinary functions
%empty-fbo-params-fixed-sample-locations-p: Public ordinary functions
%empty-fbo-params-layer-count: Public ordinary functions
%empty-fbo-params-samples: Public ordinary functions
%empty-fbo-params-viewport: Public ordinary functions
%encode-half-float: Private ordinary functions
%fbo-attachment-count: Public ordinary functions
%fbo-blending-params: Public ordinary functions
%fbo-clear-mask: Public ordinary functions
%fbo-color-arrays: Public ordinary functions
%fbo-color-arrays-fill-pointer: Public ordinary functions
%fbo-depth-array: Public ordinary functions
%fbo-draw-buffer-map: Public ordinary functions
%fbo-empty-params: Public ordinary functions
%fbo-id: Public ordinary functions
%fbo-is-default: Public ordinary functions
%fbo-owns: Private ordinary functions
%fbo-stencil-array: Public ordinary functions
%find-tex-image-format: Private ordinary functions
%force-depth-test-function: Private ordinary functions
%front-face: Private ordinary functions
%funcs-this-func-uses: Private generic functions
%funcs-this-func-uses: Private generic functions
%gen-attachment-blend: Private ordinary functions
%gen-pass-key: Private ordinary functions
%gen-texture: Private ordinary functions
%get-default-texture-format: Private ordinary functions
%get-id: Private ordinary functions
%gl-calc-byte-size: Private ordinary functions
%gl-make-shader-from-varjo: Private ordinary functions
%gpu-fence-obj: Public ordinary functions
%gpu-function: Private generic functions
%gpu-function: Private generic functions
%gpu-function: Private generic functions
%gpu-function: Private generic functions
%implicit-uniforms-dont-have-type-mismatches: Private ordinary functions
%init: Private generic functions
%init: Private generic functions
%init: Private generic functions
%inner-with-context: Private ordinary functions
%loop-setting-per-attachment-blend-params: Private ordinary functions
%make-buffer-stream: Private ordinary functions
%make-buffer-texture: Private ordinary functions
%make-c-array: Public ordinary functions
%make-cepl-context: Private ordinary functions
%make-cube-texture: Private ordinary functions
%make-default-framebuffer: Private ordinary functions
%make-gl-context: Private generic functions
%make-gl-context: Private generic functions
%make-gl-context: Private generic functions
%make-gl-context-shared-with-current-context: Private generic functions
%make-gl-context-shared-with-current-context: Private generic functions
%make-gl-context-shared-with-current-context: Private generic functions
%make-gl-context-shared-with-current-context: Private generic functions
%make-glsl-stage-spec: Private ordinary functions
%make-gpu-array: Public ordinary functions
%make-gpu-array-bb: Public ordinary functions
%make-gpu-array-t: Public ordinary functions
%make-gpu-buffer: Public ordinary functions
%make-gpu-fence: Public ordinary functions
%make-gpu-func-spec: Private ordinary functions
%make-render-buffer: Public ordinary functions
%make-sampler: Public ordinary functions
%make-ssbo: Public ordinary functions
%make-stand-in-lisp-func-for-glsl-stage: Private ordinary functions
%make-stencil-params: Public ordinary functions
%make-surface: Private generic functions
%make-surface: Private generic functions
%make-surface: Private generic functions
%make-texture: Private ordinary functions
%make-texture-with-lisp-data: Private ordinary functions
%make-tfs: Public ordinary functions
%make-ubo: Public ordinary functions
%make-viewport: Public ordinary functions
%memcpy: Private ordinary functions
%pack-alignment: Private ordinary functions
%per-attachment-blending-available-p: Private ordinary functions
%post-init: Private ordinary functions
%print-mem: Private ordinary functions
%process-with-gpu-array-range-macro-args: Private ordinary functions
%process-with-gpu-array-range-runtime: Private ordinary functions
%pull-spec-common: Private ordinary functions
%recompile-gpu-function-and-pipelines: Private generic functions
%recompile-gpu-function-and-pipelines: Private generic functions
%recompile-gpu-function-and-pipelines: Private generic functions
%register-ssbo-id: Private ordinary functions
%register-ubo-id: Private ordinary functions
%render-buffer-id: Public ordinary functions
%render-buffer-image-format: Public ordinary functions
%render-buffer-multisample-p: Public ordinary functions
%render-buffer-resolution: Public ordinary functions
%sampler-anisotropy: Public ordinary functions
%sampler-border-color: Public ordinary functions
%sampler-compare: Public ordinary functions
%sampler-context-id: Private ordinary functions
%sampler-expects-depth: Public ordinary functions
%sampler-expects-mipmap: Public ordinary functions
%sampler-id: Public ordinary functions
%sampler-id-box: Public ordinary functions
%sampler-lod-bias: Public ordinary functions
%sampler-magnify-filter: Public ordinary functions
%sampler-max-lod: Public ordinary functions
%sampler-min-lod: Public ordinary functions
%sampler-minify-filter: Public ordinary functions
%sampler-texture: Public ordinary functions
%sampler-type: Public ordinary functions
%sampler-wrap: Public ordinary functions
%scissor-viewport: Private ordinary functions
%set-anisotropy: Private ordinary functions
%set-border-color: Private ordinary functions
%set-color-mask: Private ordinary functions
%set-color-masks: Private ordinary functions
%set-compare: Private ordinary functions
%set-cull-face: Private ordinary functions
%set-current-blend-params: Private ordinary functions
%set-current-blend-params-from-fbo: Private ordinary functions
%set-current-viewport: Private ordinary functions
%set-default-fbo-and-viewport: Private ordinary functions
%set-default-fbo-viewport: Private ordinary functions
%set-depth-clamp: Private ordinary functions
%set-depth-mask: Private ordinary functions
%set-depth-range-vec2: Private ordinary functions
%set-depth-test-function: Private ordinary functions
%set-draw-fbo-no-check: Private ordinary functions
%set-fbo-bound: Private ordinary functions
%set-fbo-no-check: Private ordinary functions
%set-front-face: Private ordinary functions
%set-lod-bias: Private ordinary functions
%set-magnify-filter: Private ordinary functions
%set-max-lod: Private ordinary functions
%set-min-lod: Private ordinary functions
%set-minify-filter: Private ordinary functions
%set-pack-alignment: Private ordinary functions
%set-read-fbo-no-check: Private ordinary functions
%set-resolution: Private ordinary functions
%set-scissor-viewport: Private ordinary functions
%set-surface-fullscreen: Private generic functions
%set-surface-fullscreen: Private generic functions
%set-surface-fullscreen: Private generic functions
%set-surface-fullscreen: Private generic functions
%set-surface-size: Private generic functions
%set-surface-size: Private generic functions
%set-surface-size: Private generic functions
%set-surface-size: Private generic functions
%set-surface-title: Private generic functions
%set-surface-title: Private generic functions
%set-surface-title: Private generic functions
%set-surface-title: Private generic functions
%set-unpack-alignment: Private ordinary functions
%set-wrap: Private ordinary functions
%shutdown: Private generic functions
%shutdown: Private generic functions
%shutdown: Private generic functions
%stencil-mask: Private ordinary functions
%stencil-params-mask: Public ordinary functions
%stencil-params-on-stencil-pass-depth-test-fail: Public ordinary functions
%stencil-params-on-stencil-pass-depth-test-pass: Public ordinary functions
%stencil-params-on-stencil-test-fail: Public ordinary functions
%stencil-params-test: Public ordinary functions
%stencil-params-value: Public ordinary functions
%subscribe-to-gpu-func: Private generic functions
%subscribe-to-gpu-func: Private generic functions
%supports-multiple-contexts-p: Private generic functions
%supports-multiple-contexts-p: Private generic functions
%supports-multiple-contexts-p: Private generic functions
%supports-multiple-surfaces-p: Private generic functions
%supports-multiple-surfaces-p: Private generic functions
%supports-multiple-surfaces-p: Private generic functions
%surface-fullscreen-p: Private generic functions
%surface-fullscreen-p: Private generic functions
%surface-fullscreen-p: Private generic functions
%surface-fullscreen-p: Private generic functions
%surface-title: Private generic functions
%surface-title: Private generic functions
%surface-title: Private generic functions
%surface-title: Private generic functions
%test-&-process-spec: Private ordinary functions
%texture-dimensions: Private ordinary functions
%tfs-arrays: Public ordinary functions
%tfs-bound: Public ordinary functions
%tfs-current-prog-id: Public ordinary functions
%tfs-pending-arrays: Public ordinary functions
%unbind-fbo: Private ordinary functions
%unbind-tfs-arrays: Private ordinary functions
%unpack-alignment: Private ordinary functions
%unsubscibe-from-all: Private generic functions
%unsubscibe-from-all: Private generic functions
%unsubscibe-from-all: Private generic functions
%update-default-framebuffer-dimensions: Private ordinary functions
%update-fbo-state: Private ordinary functions
%update-glsl-stage-data: Private ordinary functions
%update-gpu-function-data: Private ordinary functions
%upload-tex: Private ordinary functions
%valid-index-type-p: Private ordinary functions
%varjo-compile-as-pipeline: Private ordinary functions
%viewport-origin-x: Public ordinary functions
%viewport-origin-y: Public ordinary functions
%viewport-resolution-x: Public ordinary functions
%viewport-resolution-y: Public ordinary functions
%with-blending: Private macros
%with-cepl-context-slots: Private macros
%with-context: Private ordinary functions
%with-scratch-texture-bound: Private macros

(
(setf %attachment): Private ordinary functions
(setf %cepl-context-array-of-bound-gpu-buffers): Private ordinary functions
(setf %cepl-context-array-of-bound-queries): Private ordinary functions
(setf %cepl-context-array-of-bound-samplers): Private ordinary functions
(setf %cepl-context-array-of-gpu-buffers): Private ordinary functions
(setf %cepl-context-array-of-ssbo-binding-ranges): Private ordinary functions
(setf %cepl-context-array-of-ssbo-bindings-buffer-ids): Private ordinary functions
(setf %cepl-context-array-of-textures): Private ordinary functions
(setf %cepl-context-array-of-transform-feedback-bindings-buffer-ids): Private ordinary functions
(setf %cepl-context-array-of-ubo-binding-ranges): Private ordinary functions
(setf %cepl-context-array-of-ubo-bindings-buffer-ids): Private ordinary functions
(setf %cepl-context-bound-thread): Private ordinary functions
(setf %cepl-context-clear-color): Private ordinary functions
(setf %cepl-context-color-masks): Private ordinary functions
(setf %cepl-context-cull-face): Private ordinary functions
(setf %cepl-context-current-blend-params): Private ordinary functions
(setf %cepl-context-current-draw-buffers-len): Private ordinary functions
(setf %cepl-context-current-draw-buffers-ptr): Private ordinary functions
(setf %cepl-context-current-program): Private ordinary functions
(setf %cepl-context-current-scissor-viewports): Private ordinary functions
(setf %cepl-context-current-stencil-mask-back): Private ordinary functions
(setf %cepl-context-current-stencil-mask-front): Private ordinary functions
(setf %cepl-context-current-stencil-params-back): Private ordinary functions
(setf %cepl-context-current-stencil-params-front): Private ordinary functions
(setf %cepl-context-current-surface): Private ordinary functions
(setf %cepl-context-current-tfs): Private ordinary functions
(setf %cepl-context-current-viewport): Private ordinary functions
(setf %cepl-context-default-framebuffer): Private ordinary functions
(setf %cepl-context-default-viewport): Private ordinary functions
(setf %cepl-context-depth-clamp): Private ordinary functions
(setf %cepl-context-depth-func): Private ordinary functions
(setf %cepl-context-depth-mask): Private ordinary functions
(setf %cepl-context-depth-range): Private ordinary functions
(setf %cepl-context-draw-fbo-binding): Private ordinary functions
(setf %cepl-context-fbos): Private ordinary functions
(setf %cepl-context-front-face): Private ordinary functions
(setf %cepl-context-gl-context): Private ordinary functions
(setf %cepl-context-gl-version-float): Private ordinary functions
(setf %cepl-context-id): Private ordinary functions
(setf %cepl-context-instance-count): Private ordinary functions
(setf %cepl-context-max-draw-buffer-count): Private ordinary functions
(setf %cepl-context-pack-alignment): Private ordinary functions
(setf %cepl-context-read-fbo-binding): Private ordinary functions
(setf %cepl-context-requested-gl-version): Private ordinary functions
(setf %cepl-context-shared): Private ordinary functions
(setf %cepl-context-surfaces): Private ordinary functions
(setf %cepl-context-uninitialized-resources): Private ordinary functions
(setf %cepl-context-unpack-alignment): Private ordinary functions
(setf %cepl-context-vao-binding-id): Private ordinary functions
(setf %empty-fbo-params-dimensions): Public ordinary functions
(setf %empty-fbo-params-fbo): Public ordinary functions
(setf %empty-fbo-params-fixed-sample-locations-p): Public ordinary functions
(setf %empty-fbo-params-layer-count): Public ordinary functions
(setf %empty-fbo-params-samples): Public ordinary functions
(setf %empty-fbo-params-viewport): Public ordinary functions
(setf %fbo-attachment-count): Public ordinary functions
(setf %fbo-blending-params): Public ordinary functions
(setf %fbo-clear-mask): Public ordinary functions
(setf %fbo-color-arrays): Public ordinary functions
(setf %fbo-color-arrays-fill-pointer): Public ordinary functions
(setf %fbo-depth-array): Public ordinary functions
(setf %fbo-draw-buffer-map): Public ordinary functions
(setf %fbo-empty-params): Public ordinary functions
(setf %fbo-id): Public ordinary functions
(setf %fbo-is-default): Public ordinary functions
(setf %fbo-owns): Private ordinary functions
(setf %fbo-stencil-array): Public ordinary functions
(setf %gpu-fence-obj): Public ordinary functions
(setf %render-buffer-id): Public ordinary functions
(setf %render-buffer-image-format): Public ordinary functions
(setf %render-buffer-multisample-p): Public ordinary functions
(setf %render-buffer-resolution): Public ordinary functions
(setf %sampler-anisotropy): Public ordinary functions
(setf %sampler-border-color): Public ordinary functions
(setf %sampler-compare): Public ordinary functions
(setf %sampler-context-id): Private ordinary functions
(setf %sampler-expects-depth): Public ordinary functions
(setf %sampler-expects-mipmap): Public ordinary functions
(setf %sampler-id): Public ordinary functions
(setf %sampler-id-box): Public ordinary functions
(setf %sampler-lod-bias): Public ordinary functions
(setf %sampler-magnify-filter): Public ordinary functions
(setf %sampler-max-lod): Public ordinary functions
(setf %sampler-min-lod): Public ordinary functions
(setf %sampler-minify-filter): Public ordinary functions
(setf %sampler-texture): Public ordinary functions
(setf %sampler-type): Public ordinary functions
(setf %sampler-wrap): Public ordinary functions
(setf %tfs-arrays): Public ordinary functions
(setf %tfs-bound): Public ordinary functions
(setf %tfs-current-prog-id): Public ordinary functions
(setf %tfs-pending-arrays): Public ordinary functions
(setf %viewport-origin-x): Public ordinary functions
(setf %viewport-origin-y): Public ordinary functions
(setf %viewport-resolution-x): Public ordinary functions
(setf %viewport-resolution-y): Public ordinary functions
(setf always-uploadp): Private generic functions
(setf always-uploadp): Private generic functions
(setf anisotropy): Public ordinary functions
(setf any-samples-passed-conservative-query-active-p): Private ordinary functions
(setf any-samples-passed-query-active-p): Private ordinary functions
(setf aref-c): Public compiler macros
(setf aref-c): Public ordinary functions
(setf aref-c*): Public ordinary functions
(setf aref-c*-1d): Private ordinary functions
(setf aref-c*-2d): Private ordinary functions
(setf aref-c*-3d): Private ordinary functions
(setf aref-c*-4d): Private ordinary functions
(setf arg-name): Private generic functions
(setf arg-name): Private generic functions
(setf arrays-indirect-command-base-instance): Public ordinary functions
(setf arrays-indirect-command-count): Public ordinary functions
(setf arrays-indirect-command-first): Public ordinary functions
(setf arrays-indirect-command-instance-count): Public ordinary functions
(setf arrays-indirect-command-pointer): Private ordinary functions
(setf assigner-body): Private generic functions
(setf assigner-body): Private generic functions
(setf assigner-index): Private generic functions
(setf assigner-index): Private generic functions
(setf assigner-name): Private generic functions
(setf assigner-name): Private generic functions
(setf assigner-type): Private generic functions
(setf assigner-type): Private generic functions
(setf att-array): Public ordinary functions
(setf att-blend): Public ordinary functions
(setf att-bparams): Public ordinary functions
(setf att-owned-p): Public ordinary functions
(setf att-viewport): Public ordinary functions
(setf attachment): Public ordinary functions
(setf attachment-blending): Public ordinary functions
(setf base-gstruct-wrapper-pointer): Private ordinary functions
(setf bi-tangent): Public generic functions
(setf bi-tangent): Public generic functions
(setf bi-tangent): Public generic functions
(setf bi-tangent): Public generic functions
(setf bi-tangent): Public generic functions
(setf blending-params): Public ordinary functions
(setf blending-params-destination-alpha): Public ordinary functions
(setf blending-params-destination-rgb): Public ordinary functions
(setf blending-params-mode-alpha): Public ordinary functions
(setf blending-params-mode-rgb): Public ordinary functions
(setf blending-params-source-alpha): Public ordinary functions
(setf blending-params-source-rgb): Public ordinary functions
(setf boop-x): Private ordinary functions
(setf boop-y): Private ordinary functions
(setf border-color): Private ordinary functions
(setf border-color): Private ordinary functions
(setf buffer-stream-%index-type-enum): Public ordinary functions
(setf buffer-stream-%index-type-size): Public ordinary functions
(setf buffer-stream-%primitive): Public ordinary functions
(setf buffer-stream-%start): Public ordinary functions
(setf buffer-stream-%start-byte): Public ordinary functions
(setf buffer-stream-base-vertex): Public ordinary functions
(setf buffer-stream-draw-mode-val): Public ordinary functions
(setf buffer-stream-gpu-arrays): Public ordinary functions
(setf buffer-stream-index-type): Public ordinary functions
(setf buffer-stream-length): Public ordinary functions
(setf buffer-stream-managed): Public ordinary functions
(setf buffer-stream-patch-length): Public ordinary functions
(setf buffer-stream-primitive): Public ordinary functions
(setf buffer-stream-primitive-group-id): Public ordinary functions
(setf buffer-stream-start): Public ordinary functions
(setf buffer-stream-start-byte): Public ordinary functions
(setf buffer-stream-vao): Public ordinary functions
(setf buffer-texture-allocated-p): Private ordinary functions
(setf buffer-texture-backing-array): Public ordinary functions
(setf buffer-texture-base-dimensions): Private ordinary functions
(setf buffer-texture-cache-id): Private ordinary functions
(setf buffer-texture-cubes-p): Private ordinary functions
(setf buffer-texture-fixed-sample-locations-p): Private ordinary functions
(setf buffer-texture-id): Private ordinary functions
(setf buffer-texture-image-format): Private ordinary functions
(setf buffer-texture-last-sampler-id): Private ordinary functions
(setf buffer-texture-layer-count): Private ordinary functions
(setf buffer-texture-mipmap-levels): Private ordinary functions
(setf buffer-texture-mutable-p): Private ordinary functions
(setf buffer-texture-owns-array): Public ordinary functions
(setf buffer-texture-samples): Private ordinary functions
(setf buffer-texture-type): Private ordinary functions
(setf c-array-byte-size): Public ordinary functions
(setf c-array-dimensions): Public ordinary functions
(setf c-array-element-from-foreign): Public ordinary functions
(setf c-array-element-pixel-format): Public ordinary functions
(setf c-array-element-to-foreign): Public ordinary functions
(setf c-array-element-type): Public ordinary functions
(setf c-array-free): Public ordinary functions
(setf c-array-pointer): Public ordinary functions
(setf c-array-row-alignment): Public ordinary functions
(setf c-array-sizes): Public ordinary functions
(setf c-array-struct-element-typep): Public ordinary functions
(setf c-array-total-size): Public ordinary functions
(setf cleanup): Private generic functions
(setf cleanup): Private generic functions
(setf clear-color): Public ordinary functions
(setf col): Public generic functions
(setf col): Public generic functions
(setf col): Public generic functions
(setf col): Public generic functions
(setf col): Public generic functions
(setf col): Public generic functions
(setf color-mask): Public compiler macros
(setf color-mask): Public ordinary functions
(setf color-masks): Public compiler macros
(setf color-masks): Public ordinary functions
(setf compare): Public ordinary functions
(setf compile-context-primitive): Private ordinary functions
(setf compile-context-stage): Private ordinary functions
(setf compile-context-static-p): Private ordinary functions
(setf compile-context-versions): Private ordinary functions
(setf compute-space-as-uvec3): Public ordinary functions
(setf compute-space-dimensions): Public ordinary functions
(setf compute-space-size-x): Public ordinary functions
(setf compute-space-size-y): Public ordinary functions
(setf compute-space-size-z): Public ordinary functions
(setf cull-face): Public compiler macros
(setf cull-face): Public ordinary functions
(setf current-stencil-params): Public compiler macros
(setf current-stencil-params): Public ordinary functions
(setf delayed-thunk): Private ordinary functions
(setf delayed-waiting-on): Private ordinary functions
(setf depth-clamp): Public compiler macros
(setf depth-clamp): Public ordinary functions
(setf depth-mask): Public compiler macros
(setf depth-mask): Public ordinary functions
(setf depth-range-vec2): Public compiler macros
(setf depth-range-vec2): Public ordinary functions
(setf depth-test-function): Public compiler macros
(setf depth-test-function): Public ordinary functions
(setf destination-alpha): Public ordinary functions
(setf destination-rgb): Public ordinary functions
(setf dimensions): Public generic functions
(setf dimensions): Public generic functions
(setf dimensions): Public generic functions
(setf draw-fbo-bound): Public ordinary functions
(setf elements-indirect-command-base-instance): Public ordinary functions
(setf elements-indirect-command-base-vertex): Public ordinary functions
(setf elements-indirect-command-count): Public ordinary functions
(setf elements-indirect-command-first-index): Public ordinary functions
(setf elements-indirect-command-instance-count): Public ordinary functions
(setf elements-indirect-command-pointer): Private ordinary functions
(setf empty-fbo-params-dimensions): Public ordinary functions
(setf empty-fbo-params-fixed-sample-locations-p): Public ordinary functions
(setf empty-fbo-params-layer-count): Public ordinary functions
(setf empty-fbo-params-samples): Public ordinary functions
(setf fbo-bound): Public ordinary functions
(setf front-face): Public compiler macros
(setf front-face): Public ordinary functions
(setf funcs-that-use-this-func): Private generic functions
(setf funcs-that-use-this-func): Private generic functions
(setf funcs-that-use-this-func): Private generic functions
(setf function-keyed-pipeline): Private ordinary functions
(setf g-pc-pointer): Private ordinary functions
(setf g-pn-pointer): Private ordinary functions
(setf g-pnb-pointer): Private ordinary functions
(setf g-pnc-pointer): Private ordinary functions
(setf g-pncb-pointer): Private ordinary functions
(setf g-pnt-pointer): Private ordinary functions
(setf g-pntb-pointer): Private ordinary functions
(setf g-pntc-pointer): Private ordinary functions
(setf g-pntcb-pointer): Private ordinary functions
(setf g-pt-pointer): Private ordinary functions
(setf g-struct-info): Private ordinary functions
(setf glambda-state-pipeline): Private ordinary functions
(setf glambda-state-recompiler): Private ordinary functions
(setf glambda-state-spec): Private ordinary functions
(setf gpu-array-bb-access-style): Public ordinary functions
(setf gpu-array-bb-buffer): Public ordinary functions
(setf gpu-array-bb-byte-size): Public ordinary functions
(setf gpu-array-bb-dimensions): Private ordinary functions
(setf gpu-array-bb-element-byte-size): Public ordinary functions
(setf gpu-array-bb-element-pixel-format): Public ordinary functions
(setf gpu-array-bb-element-type): Public ordinary functions
(setf gpu-array-bb-offset-in-bytes-into-buffer): Public ordinary functions
(setf gpu-array-bb-row-alignment): Public ordinary functions
(setf gpu-array-dimensions): Public ordinary functions
(setf gpu-array-t-dimensions): Private ordinary functions
(setf gpu-array-t-face-num): Public ordinary functions
(setf gpu-array-t-image-format): Public ordinary functions
(setf gpu-array-t-layer-num): Public ordinary functions
(setf gpu-array-t-level-num): Public ordinary functions
(setf gpu-array-t-texture): Public ordinary functions
(setf gpu-array-t-texture-type): Public ordinary functions
(setf gpu-buffer-arrays): Public ordinary functions
(setf gpu-buffer-bound): Public compiler macros
(setf gpu-buffer-bound): Public ordinary functions
(setf gpu-buffer-cache-id): Public ordinary functions
(setf gpu-buffer-id): Public ordinary functions
(setf gpu-func-spec): Private generic functions
(setf gpu-func-spec): Private generic functions
(setf gpu-func-spec): Private generic functions
(setf let-forms): Private generic functions
(setf let-forms): Private generic functions
(setf local-arg-name): Private generic functions
(setf local-arg-name): Private generic functions
(setf lod-bias): Public ordinary functions
(setf magnify-filter): Public ordinary functions
(setf max-lod): Public ordinary functions
(setf min-lod): Public ordinary functions
(setf minify-filter): Public ordinary functions
(setf mode-alpha): Public ordinary functions
(setf mode-rgb): Public ordinary functions
(setf norm): Public generic functions
(setf norm): Public generic functions
(setf norm): Public generic functions
(setf norm): Public generic functions
(setf norm): Public generic functions
(setf norm): Public generic functions
(setf norm): Public generic functions
(setf norm): Public generic functions
(setf norm): Public generic functions
(setf origin): Public generic functions
(setf origin): Public generic functions
(setf pack-alignment): Public compiler macros
(setf pack-alignment): Public ordinary functions
(setf pipeline-spec): Private ordinary functions
(setf pipeline-state-diff-tag): Private ordinary functions
(setf pipeline-state-enable-rasterizer): Private ordinary functions
(setf pipeline-state-implicit-uniform-upload-func): Private ordinary functions
(setf pipeline-state-prog-ids): Private ordinary functions
(setf pipeline-state-tfs-array-count): Private ordinary functions
(setf pipeline-state-tfs-primitive): Private ordinary functions
(setf pipeline-state-uniform-int-ids): Private ordinary functions
(setf pipeline-state-uniform-uint-ids): Private ordinary functions
(setf pixel-format-comp-length): Public ordinary functions
(setf pixel-format-components): Public ordinary functions
(setf pixel-format-normalize): Public ordinary functions
(setf pixel-format-reversed): Public ordinary functions
(setf pixel-format-sizes): Public ordinary functions
(setf pixel-format-type): Public ordinary functions
(setf pointer-arg): Private generic functions
(setf pointer-arg): Private generic functions
(setf pos): Public generic functions
(setf pos): Public generic functions
(setf pos): Public generic functions
(setf pos): Public generic functions
(setf pos): Public generic functions
(setf pos): Public generic functions
(setf pos): Public generic functions
(setf pos): Public generic functions
(setf pos): Public generic functions
(setf pos): Public generic functions
(setf pos): Public generic functions
(setf primitives-generated-query-active-p): Private ordinary functions
(setf read-fbo-bound): Public ordinary functions
(setf resolution): Public generic functions
(setf resolution): Public generic functions
(setf row-major-aref-c): Public ordinary functions
(setf sampler-id-box-id): Public ordinary functions
(setf sampler-id-box-shared-p): Public ordinary functions
(setf samples-passed-query-active-p): Private ordinary functions
(setf scissor-viewport): Public compiler macros
(setf scissor-viewport): Public ordinary functions
(setf scoped-gpu-query-active-p): Public ordinary functions
(setf source-alpha): Public ordinary functions
(setf source-rgb): Public ordinary functions
(setf ssbo-data): Public ordinary functions
(setf ssbo-id): Public ordinary functions
(setf ssbo-index): Public ordinary functions
(setf ssbo-owns-gpu-array): Public ordinary functions
(setf stencil-mask): Public compiler macros
(setf stencil-mask): Public ordinary functions
(setf surface-dimensions): Public ordinary functions
(setf surface-fullscreen-p): Public ordinary functions
(setf surface-resolution): Public ordinary functions
(setf surface-title): Public ordinary functions
(setf tangent): Public generic functions
(setf tangent): Public generic functions
(setf tangent): Public generic functions
(setf tangent): Public generic functions
(setf tangent): Public generic functions
(setf tex): Public generic functions
(setf tex): Public generic functions
(setf tex): Public generic functions
(setf tex): Public generic functions
(setf tex): Public generic functions
(setf tex): Public generic functions
(setf tex-compare): Private ordinary functions
(setf tex-lod-bias): Private ordinary functions
(setf tex-magnify-filter): Private ordinary functions
(setf tex-max-lod): Private ordinary functions
(setf tex-min-lod): Private ordinary functions
(setf tex-minify-filter): Private ordinary functions
(setf tex-wrap): Private ordinary functions
(setf texture-allocated-p): Public ordinary functions
(setf texture-base-dimensions): Public ordinary functions
(setf texture-cache-id): Public ordinary functions
(setf texture-cubes-p): Public ordinary functions
(setf texture-fixed-sample-locations-p): Public ordinary functions
(setf texture-id): Public ordinary functions
(setf texture-image-format): Public ordinary functions
(setf texture-last-sampler-id): Public ordinary functions
(setf texture-layer-count): Public ordinary functions
(setf texture-mipmap-levels): Public ordinary functions
(setf texture-mutable-p): Public ordinary functions
(setf texture-samples): Public ordinary functions
(setf texture-type): Public ordinary functions
(setf time-elapsed-query-active-p): Private ordinary functions
(setf transform-feedback-primitives-written-query-active-p): Private ordinary functions
(setf transform-feedback-stream-arrays): Public ordinary functions
(setf ubo-data): Public ordinary functions
(setf ubo-id): Public ordinary functions
(setf ubo-index): Public ordinary functions
(setf ubo-owns-gpu-array): Public ordinary functions
(setf uidx-int): Private ordinary functions
(setf uidx-uint): Private ordinary functions
(setf unbound-cepl-context-consumed): Private ordinary functions
(setf unbound-cepl-context-gl-context): Private ordinary functions
(setf unbound-cepl-context-requested-gl-version): Private ordinary functions
(setf unbound-cepl-context-shared): Private ordinary functions
(setf unbound-cepl-context-surface): Private ordinary functions
(setf unbound-cepl-context-surfaces): Private ordinary functions
(setf unpack-alignment): Public compiler macros
(setf unpack-alignment): Public ordinary functions
(setf uploaders): Private generic functions
(setf uploaders): Private generic functions
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf v-signature): Private standalone methods
(setf vao-bound): Public ordinary functions
(setf viewport): Public generic functions
(setf viewport-dimensions): Public ordinary functions
(setf viewport-origin): Public ordinary functions
(setf viewport-origin-i): Public ordinary functions
(setf viewport-resolution): Public ordinary functions
(setf wrap): Public ordinary functions

-
---block-doc---: Private macros

1
1d-p: Public ordinary functions

A
across-c: Private ordinary functions
across-c-ptr: Public ordinary functions
active-p: Private ordinary functions
active-texture-num: Public ordinary functions
add-compile-results-to-pipeline: Private ordinary functions
add-layout-to-struct-uniforms: Private ordinary functions
add-surface: Public ordinary functions
adjust-gpu-array: Public ordinary functions
aggregate-uniforms: Private ordinary functions
allocate-immutable-texture: Private ordinary functions
allocate-mutable-texture: Private ordinary functions
allocate-texture: Private ordinary functions
always: Public ordinary functions
always-uploadp: Private generic functions
always-uploadp: Private generic functions
anisotropy: Public ordinary functions
any-samples-passed-conservative-query-active-p: Private ordinary functions
any-samples-passed-conservative-query-cache-id: Private ordinary functions
any-samples-passed-conservative-query-enum: Private ordinary functions
any-samples-passed-conservative-query-id: Private ordinary functions
any-samples-passed-conservative-query-p: Private ordinary functions
any-samples-passed-query-active-p: Private ordinary functions
any-samples-passed-query-cache-id: Private ordinary functions
any-samples-passed-query-enum: Private ordinary functions
any-samples-passed-query-id: Private ordinary functions
any-samples-passed-query-p: Private ordinary functions
arange: Public ordinary functions
arangei: Public ordinary functions
aref-c: Public compiler macros
aref-c: Public ordinary functions
aref-c*: Public ordinary functions
aref-c*-1d: Private ordinary functions
aref-c*-2d: Private ordinary functions
aref-c*-3d: Private ordinary functions
aref-c*-4d: Private ordinary functions
arg-name: Private generic functions
arg-name: Private generic functions
arrays-indirect-command-base-instance: Public ordinary functions
arrays-indirect-command-count: Public ordinary functions
arrays-indirect-command-first: Public ordinary functions
arrays-indirect-command-instance-count: Public ordinary functions
arrays-indirect-command-p: Private ordinary functions
arrays-indirect-command-pointer: Private ordinary functions
assendingp: Private ordinary functions
assert-arg-format: Private ordinary functions
assert-glsl-arg-format: Private ordinary functions
assert-glsl-stage-types: Private ordinary functions
assert-lambda-list: Public macros
assert-layout-consistent: Private ordinary functions
assert-no-other-context-is-bound-to-thread: Private ordinary functions
assert-valid-args-for-buffer-backed-texture: Private ordinary functions
assert-valid-gpipe-form: Private ordinary functions
assert-valid-gpipe-shader-implicit-form: Private ordinary functions
assert-valid-gpu-function-args: Private ordinary functions
assert-valid-stage-specs: Private ordinary functions
assigner-body: Private generic functions
assigner-body: Private generic functions
assigner-index: Private generic functions
assigner-index: Private generic functions
assigner-name: Private generic functions
assigner-name: Private generic functions
assigner-type: Private generic functions
assigner-type: Private generic functions
assoc-bind: Public macros
assocr: Public compiler macros
assocr: Public ordinary functions
att-array: Public ordinary functions
att-blend: Public ordinary functions
att-bparams: Public ordinary functions
att-owned-p: Public ordinary functions
att-p: Private ordinary functions
att-viewport: Public ordinary functions
attachment: Public ordinary functions
attachment-blending: Public ordinary functions
attachment-compatible: Private ordinary functions
attachment-pattern: Public ordinary functions
attachment-tex: Public ordinary functions
attachment-viewport: Public ordinary functions
attachment-viewport-allowing-t: Private ordinary functions

B
backed-by: Public ordinary functions
bake-and-g->: Private ordinary functions
bake-uniforms: Public ordinary functions
base-gstruct-wrapper-p: Private ordinary functions
base-gstruct-wrapper-pointer: Private ordinary functions
begin-scoped-gpu-query: Private ordinary functions
bi-tangent: Public generic functions
bi-tangent: Public generic functions
bi-tangent: Public generic functions
bi-tangent: Public generic functions
bi-tangent: Public generic functions
bind-scratch-texture: Private ordinary functions
blank-buffer-object: Private ordinary functions
blank-buffer-stream: Private ordinary functions
blank-c-array-object: Private ordinary functions
blank-gpu-array-b-object: Private ordinary functions
blank-texture-object: Private ordinary functions
blend-func-namep: Private ordinary functions
blending-params: Public ordinary functions
blending-params-destination-alpha: Public ordinary functions
blending-params-destination-rgb: Public ordinary functions
blending-params-mode-alpha: Public ordinary functions
blending-params-mode-rgb: Public ordinary functions
blending-params-p: Public ordinary functions
blending-params-source-alpha: Public ordinary functions
blending-params-source-rgb: Public ordinary functions
boop-p: Private ordinary functions
boop-x: Private ordinary functions
boop-y: Private ordinary functions
border-color: Private ordinary functions
buffer-bound-static: Private ordinary functions
buffer-data: Public ordinary functions
buffer-data-raw: Public ordinary functions
buffer-kind->cache-index: Private ordinary functions
buffer-kind->enum: Private ordinary functions
buffer-reserve-block: Public ordinary functions
buffer-reserve-block-raw: Private ordinary functions
buffer-reserve-blocks-from-sizes: Private ordinary functions
buffer-set-arrays-from-sizes: Private ordinary functions
buffer-stream-%index-type-enum: Public ordinary functions
buffer-stream-%index-type-size: Public ordinary functions
buffer-stream-%primitive: Public ordinary functions
buffer-stream-%start: Public ordinary functions
buffer-stream-%start-byte: Public ordinary functions
buffer-stream-base-vertex: Public ordinary functions
buffer-stream-compatible-typep: Private ordinary functions
buffer-stream-draw-mode-val: Public ordinary functions
buffer-stream-gpu-arrays: Public ordinary functions
buffer-stream-index-type: Public ordinary functions
buffer-stream-length: Public ordinary functions
buffer-stream-managed: Public ordinary functions
buffer-stream-p: Public ordinary functions
buffer-stream-patch-length: Public ordinary functions
buffer-stream-primitive: Public ordinary functions
buffer-stream-primitive-group-id: Public ordinary functions
buffer-stream-start: Public ordinary functions
buffer-stream-start-byte: Public ordinary functions
buffer-stream-vao: Public ordinary functions
buffer-texture-allocated-p: Private ordinary functions
buffer-texture-backing-array: Public ordinary functions
buffer-texture-base-dimensions: Private ordinary functions
buffer-texture-cache-id: Private ordinary functions
buffer-texture-cubes-p: Private ordinary functions
buffer-texture-fixed-sample-locations-p: Private ordinary functions
buffer-texture-id: Private ordinary functions
buffer-texture-image-format: Private ordinary functions
buffer-texture-last-sampler-id: Private ordinary functions
buffer-texture-layer-count: Private ordinary functions
buffer-texture-mipmap-levels: Private ordinary functions
buffer-texture-mutable-p: Private ordinary functions
buffer-texture-owns-array: Public ordinary functions
buffer-texture-p: Public ordinary functions
buffer-texture-samples: Private ordinary functions
buffer-texture-type: Private ordinary functions

C
c-arr-to-lisp-struct-elems: Private ordinary functions
c-arr-to-lisp-val-elems: Private ordinary functions
c-array-byte-size: Public ordinary functions
c-array-dimensions: Public ordinary functions
c-array-element-byte-size: Public ordinary functions
c-array-element-from-foreign: Public ordinary functions
c-array-element-pixel-format: Public ordinary functions
c-array-element-to-foreign: Public ordinary functions
c-array-element-type: Public ordinary functions
c-array-free: Public ordinary functions
c-array-p: Public ordinary functions
c-array-pointer: Public ordinary functions
c-array-rank: Private ordinary functions
c-array-row-alignment: Public ordinary functions
c-array-sizes: Public ordinary functions
c-array-struct-element-typep: Public ordinary functions
c-array-total-size: Public ordinary functions
calc-aligned-offset: Private ordinary functions
calc-array-of-col-mat-layout: Private ordinary functions
calc-array-of-scalar-or-vectors-layout: Private ordinary functions
calc-array-of-structs-layout: Private ordinary functions
calc-base-offset: Private ordinary functions
calc-block-layout: Public ordinary functions
calc-col-mat-layout: Private ordinary functions
calc-feedback-style-and-names: Private ordinary functions
calc-image-format: Private ordinary functions
calc-layout: Private ordinary functions
calc-max-num-mipmap-levels: Private ordinary functions
calc-minify-filter: Private ordinary functions
calc-query-get-func-for-gpu-array: Private ordinary functions
calc-sampler-type: Private ordinary functions
calc-scalar-layout: Private ordinary functions
calc-struct-layout: Private ordinary functions
calc-struct-layout-from-name-type-pairs: Public ordinary functions
calc-struct-member-layout: Private ordinary functions
calc-vector-base-alignment: Private ordinary functions
calc-vector-layout: Private ordinary functions
call-listeners: Private ordinary functions
can-be-shared-between-contexts-p: Public generic functions
can-be-shared-between-contexts-p: Public generic functions
can-be-shared-between-contexts-p: Public generic functions
can-be-shared-between-contexts-p: Public generic functions
can-be-shared-between-contexts-p: Public generic functions
can-be-shared-between-contexts-p: Public generic functions
can-be-shared-between-contexts-p: Public generic functions
can-be-shared-between-contexts-p: Public generic functions
can-bind-query-p: Public ordinary functions
case=: Public macros
cepl-client-wait-sync: Private ordinary functions
cepl-context: Public compiler macros
cepl-context: Public ordinary functions
cepl-context-p: Private ordinary functions
cepl-describe: Public ordinary functions
cepl.pipelines.arrays-indirect-command.from-foreign: Private ordinary functions
cepl.pipelines.arrays-indirect-command.make: Private ordinary functions
cepl.pipelines.arrays-indirect-command.to-foreign: Private ordinary functions
cepl.pipelines.elements-indirect-command.from-foreign: Private ordinary functions
cepl.pipelines.elements-indirect-command.make: Private ordinary functions
cepl.pipelines.elements-indirect-command.to-foreign: Private ordinary functions
cepl.types.predefined.g-pc.from-foreign: Private ordinary functions
cepl.types.predefined.g-pc.make: Private ordinary functions
cepl.types.predefined.g-pc.to-foreign: Private ordinary functions
cepl.types.predefined.g-pn.from-foreign: Private ordinary functions
cepl.types.predefined.g-pn.make: Private ordinary functions
cepl.types.predefined.g-pn.to-foreign: Private ordinary functions
cepl.types.predefined.g-pnb.from-foreign: Private ordinary functions
cepl.types.predefined.g-pnb.make: Private ordinary functions
cepl.types.predefined.g-pnb.to-foreign: Private ordinary functions
cepl.types.predefined.g-pnc.from-foreign: Private ordinary functions
cepl.types.predefined.g-pnc.make: Private ordinary functions
cepl.types.predefined.g-pnc.to-foreign: Private ordinary functions
cepl.types.predefined.g-pncb.from-foreign: Private ordinary functions
cepl.types.predefined.g-pncb.make: Private ordinary functions
cepl.types.predefined.g-pncb.to-foreign: Private ordinary functions
cepl.types.predefined.g-pnt.from-foreign: Private ordinary functions
cepl.types.predefined.g-pnt.make: Private ordinary functions
cepl.types.predefined.g-pnt.to-foreign: Private ordinary functions
cepl.types.predefined.g-pntb.from-foreign: Private ordinary functions
cepl.types.predefined.g-pntb.make: Private ordinary functions
cepl.types.predefined.g-pntb.to-foreign: Private ordinary functions
cepl.types.predefined.g-pntc.from-foreign: Private ordinary functions
cepl.types.predefined.g-pntc.make: Private ordinary functions
cepl.types.predefined.g-pntc.to-foreign: Private ordinary functions
cepl.types.predefined.g-pntcb.from-foreign: Private ordinary functions
cepl.types.predefined.g-pntcb.make: Private ordinary functions
cepl.types.predefined.g-pntcb.to-foreign: Private ordinary functions
cepl.types.predefined.g-pt.from-foreign: Private ordinary functions
cepl.types.predefined.g-pt.make: Private ordinary functions
cepl.types.predefined.g-pt.to-foreign: Private ordinary functions
cffi-type->gl-type: Public ordinary functions
change-state: Private ordinary functions
check-anisotropy-feature: Private ordinary functions
check-array-sizes-for-copy: Public ordinary functions
check-array-types-for-copy: Public ordinary functions
check-c-array-dimensions: Private ordinary functions
check-framebuffer-status: Public ordinary functions
check-host: Private generic functions
check-host: Private generic functions
check-host: Private generic functions
check-host: Private generic functions
check-host: Private generic functions
check-immutable-feature: Private ordinary functions
check-mipmap-level-count-valid: Private generic functions
check-mipmap-level-count-valid: Private generic functions
check-sampler-feature: Private ordinary functions
check-single-element-not-list: Private ordinary functions
check-version-for-per-attachment-params: Private ordinary functions
cleanup: Private generic functions
cleanup: Private generic functions
clear: Public compiler macros
clear: Public ordinary functions
clear-attachments: Public compiler macros
clear-attachments: Public ordinary functions
clear-color: Public ordinary functions
clear-fbo: Public compiler macros
clear-fbo: Public ordinary functions
clear-gl-context-cache: Public generic functions
clone-c-array: Public ordinary functions
clone-stage-spec: Private ordinary functions
cls: Public ordinary functions
col: Public generic functions
col: Public generic functions
col: Public generic functions
col: Public generic functions
col: Public generic functions
col: Public generic functions
color-attachment-enum: Public ordinary functions
color-attachments: Public compiler macros
color-attachments: Public ordinary functions
color-mask: Public compiler macros
color-mask: Public ordinary functions
color-masks: Public compiler macros
color-masks: Public ordinary functions
color-renderable-formatp: Public ordinary functions
compare: Public ordinary functions
compile-context-p: Private ordinary functions
compile-context-primitive: Private ordinary functions
compile-context-stage: Private ordinary functions
compile-context-static-p: Private ordinary functions
compile-context-versions: Private ordinary functions
compile-g: Public ordinary functions
compile-pixel-format: Private ordinary functions
Compiler Macro, (setf aref-c): Public compiler macros
Compiler Macro, (setf color-mask): Public compiler macros
Compiler Macro, (setf color-masks): Public compiler macros
Compiler Macro, (setf cull-face): Public compiler macros
Compiler Macro, (setf current-stencil-params): Public compiler macros
Compiler Macro, (setf depth-clamp): Public compiler macros
Compiler Macro, (setf depth-mask): Public compiler macros
Compiler Macro, (setf depth-range-vec2): Public compiler macros
Compiler Macro, (setf depth-test-function): Public compiler macros
Compiler Macro, (setf front-face): Public compiler macros
Compiler Macro, (setf gpu-buffer-bound): Public compiler macros
Compiler Macro, (setf pack-alignment): Public compiler macros
Compiler Macro, (setf scissor-viewport): Public compiler macros
Compiler Macro, (setf stencil-mask): Public compiler macros
Compiler Macro, (setf unpack-alignment): Public compiler macros
Compiler Macro, aref-c: Public compiler macros
Compiler Macro, assocr: Public compiler macros
Compiler Macro, cepl-context: Public compiler macros
Compiler Macro, clear: Public compiler macros
Compiler Macro, clear-attachments: Public compiler macros
Compiler Macro, clear-fbo: Public compiler macros
Compiler Macro, color-attachments: Public compiler macros
Compiler Macro, color-mask: Public compiler macros
Compiler Macro, color-masks: Public compiler macros
Compiler Macro, cull-face: Public compiler macros
Compiler Macro, current-blend-params: Private compiler macros
Compiler Macro, current-stencil-params: Public compiler macros
Compiler Macro, depth-clamp: Public compiler macros
Compiler Macro, depth-mask: Public compiler macros
Compiler Macro, depth-range-vec2: Public compiler macros
Compiler Macro, depth-test-function: Public compiler macros
Compiler Macro, ensure-vec-index: Public compiler macros
Compiler Macro, force-depth-test-function: Private compiler macros
Compiler Macro, front-face: Public compiler macros
Compiler Macro, get-gl-attachment-enum: Private compiler macros
Compiler Macro, gpu-buffer-bound: Public compiler macros
Compiler Macro, pack-alignment: Public compiler macros
Compiler Macro, per-attachment-blending-available-p: Public compiler macros
Compiler Macro, ptr-index: Public compiler macros
Compiler Macro, scissor-viewport: Public compiler macros
Compiler Macro, set-current-blend-params: Private compiler macros
Compiler Macro, set-current-blend-params-from-fbo: Private compiler macros
Compiler Macro, stencil-mask: Public compiler macros
Compiler Macro, unpack-alignment: Public compiler macros
complete-single-stage-pipeline: Private ordinary functions
complete-unbound-context: Private ordinary functions
compute-expander: Private ordinary functions
compute-glsl-version-from-stage-pairs: Private ordinary functions
compute-space-as-uvec3: Public ordinary functions
compute-space-dimensions: Public ordinary functions
compute-space-p: Private ordinary functions
compute-space-size-x: Public ordinary functions
compute-space-size-y: Public ordinary functions
compute-space-size-z: Public ordinary functions
cons-aware-1d-p: Private ordinary functions
consecutive-integers-p: Public ordinary functions
context-id: Public ordinary functions
copy-any-samples-passed-conservative-query: Private ordinary functions
copy-any-samples-passed-query: Private ordinary functions
copy-att: Private ordinary functions
copy-blending-params: Public ordinary functions
copy-boop6: Private ordinary functions
copy-buffer-backed-gpu-array-to-new-c-array: Public ordinary functions
copy-buffer-backed-gpu-array-to-new-lisp-data: Public ordinary functions
copy-buffer-backed-gpu-array-to-texture-backed-gpu-array: Public ordinary functions
copy-buffer-stream: Private ordinary functions
copy-buffer-texture: Private ordinary functions
copy-c-array: Private ordinary functions
copy-c-array-to-buffer-backed-gpu-array: Public ordinary functions
copy-c-array-to-new-lisp-data: Public ordinary functions
copy-c-array-to-ssbo: Private ordinary functions
copy-c-array-to-texture-backed-gpu-array: Public ordinary functions
copy-c-array-to-ubo: Private ordinary functions
copy-cepl-context: Private ordinary functions
copy-compile-context: Private ordinary functions
copy-compute-space: Private ordinary functions
copy-delayed: Private ordinary functions
copy-empty-fbo-params: Private ordinary functions
copy-fbo: Private ordinary functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-g: Public generic functions
copy-glambda-state: Private ordinary functions
copy-gpu-array: Private ordinary functions
copy-gpu-array-bb: Private ordinary functions
copy-gpu-array-t: Private ordinary functions
copy-gpu-buffer: Private ordinary functions
copy-gpu-fence: Private ordinary functions
copy-gpu-query: Private ordinary functions
copy-lisp-array-to-ssbo: Private ordinary functions
copy-lisp-array-to-ubo: Private ordinary functions
copy-lisp-data-to-buffer-backed-gpu-array: Public ordinary functions
copy-lisp-data-to-c-array: Public ordinary functions
copy-lisp-data-to-texture-backed-gpu-array: Public ordinary functions
copy-lisp-list-to-ssbo: Private ordinary functions
copy-lisp-list-to-ubo: Private ordinary functions
copy-pipeline-state: Private ordinary functions
copy-pixel-format: Private ordinary functions
copy-primitives-generated-query: Private ordinary functions
copy-render-buffer: Private ordinary functions
copy-sampler: Private ordinary functions
copy-sampler-id-box: Private ordinary functions
copy-samples-passed-query: Private ordinary functions
copy-scoped-gpu-query: Private ordinary functions
copy-ssbo: Private ordinary functions
copy-ssbo-to-new-c-array: Private ordinary functions
copy-ssbo-to-new-lisp-data: Private ordinary functions
copy-stencil-params: Private ordinary functions
copy-texture: Private ordinary functions
copy-texture-backed-gpu-array-to-buffer-backed-gpu-array: Public ordinary functions
copy-texture-backed-gpu-array-to-c-array: Public ordinary functions
copy-texture-backed-gpu-array-to-new-buffer-backed-gpu-array: Public ordinary functions
copy-texture-backed-gpu-array-to-new-c-array: Public ordinary functions
copy-texture-backed-gpu-array-to-new-lisp-data: Public ordinary functions
copy-time-elapsed-query: Private ordinary functions
copy-timestamp-query: Private ordinary functions
copy-transform-feedback-primitives-written-query: Private ordinary functions
copy-transform-feedback-stream: Private ordinary functions
copy-ubo: Private ordinary functions
copy-ubo-to-new-c-array: Private ordinary functions
copy-ubo-to-new-lisp-data: Private ordinary functions
copy-uidx: Private ordinary functions
copy-unbound-cepl-context: Private ordinary functions
copy-viewport: Public ordinary functions
cube->fbo-arrays: Private ordinary functions
cull-face: Public compiler macros
cull-face: Public ordinary functions
current-blend-params: Private compiler macros
current-blend-params: Private ordinary functions
current-stencil-params: Public compiler macros
current-stencil-params: Public ordinary functions
current-surface: Public ordinary functions
current-viewport: Public ordinary functions

D
dbind: Public macros
decode-half-float: Private ordinary functions
def-dispatch-func: Private ordinary functions
def-glsl-stage: Public macros
default-fbo: Public ordinary functions
default-fbo-attachment-enum: Private ordinary functions
defcondition: Public macros
deferror: Public macros
define-compiler-macro-g: Public macros
define-const: Public macros
define-context-func: Private macros
define-defn-declaration: Public macros
defmacro-g: Public macros
defmethod+: Public macros
defn: Public macros
defn-inline: Public macros
defpipeline-g: Public macros
defstruct-g: Public macros
defun+: Public macros
defun-g: Public macros
defun-g-common: Private ordinary functions
defun-g-equiv: Public macros
defwarning: Public macros
defx*: Private ordinary functions
delay-initialization: Private ordinary functions
delayed-p: Private ordinary functions
delayed-thunk: Private ordinary functions
delayed-waiting-on: Private ordinary functions
delete-func-spec: Private generic functions
delete-func-spec: Private generic functions
delete-gpu-function: Public generic functions
delete-gpu-function: Public generic functions
delete-gpu-function: Public generic functions
delete-gpu-function: Public generic functions
delete-gpu-function: Public generic functions
depth-clamp: Public compiler macros
depth-clamp: Public ordinary functions
depth-formatp: Public ordinary functions
depth-mask: Public compiler macros
depth-mask: Public ordinary functions
depth-range-vec2: Public compiler macros
depth-range-vec2: Public ordinary functions
depth-stencil-formatp: Public ordinary functions
depth-test-function: Public compiler macros
depth-test-function: Public ordinary functions
describe-image-format: Private ordinary functions
describe-pixel-format: Private ordinary functions
destination-alpha: Public ordinary functions
destination-rgb: Public ordinary functions
destroy-surface: Public ordinary functions
dimensions: Public generic functions
dimensions: Public generic functions
dimensions: Public generic functions
dimensions: Public generic functions
dimensions: Public generic functions
dimensions: Public generic functions
dimensions: Public generic functions
dimensions-at-mipmap-level: Private ordinary functions
discard-context-id: Private ordinary functions
dispatch-dyn-gpu-call: Private ordinary functions
dispatch-make-assigner: Private ordinary functions
double-from-foreign: Public ordinary functions
double-to-foreign: Public ordinary functions
draw-buffer-i: Private generic functions
draw-buffer-i: Private generic functions
draw-expander: Private ordinary functions
draw-fbo-bound: Public ordinary functions
draw-mode-group-id: Public ordinary functions
draw-mode-symbol-group-id: Private ordinary functions
dyn-code-to-pipeline-and-stages: Private ordinary functions

E
early-compute-mask: Private ordinary functions
ecase=: Public macros
element-byte-size: Public generic functions
element-byte-size: Public generic functions
element-type: Public generic functions
element-type: Public generic functions
element-type: Public generic functions
element-type: Public generic functions
element-type: Public generic functions
elements-indirect-command-base-instance: Public ordinary functions
elements-indirect-command-base-vertex: Public ordinary functions
elements-indirect-command-count: Public ordinary functions
elements-indirect-command-first-index: Public ordinary functions
elements-indirect-command-instance-count: Public ordinary functions
elements-indirect-command-p: Private ordinary functions
elements-indirect-command-pointer: Private ordinary functions
empty-fbo-args-p: Private ordinary functions
empty-fbo-params: Public ordinary functions
empty-fbo-params-dimensions: Public ordinary functions
empty-fbo-params-fixed-sample-locations-p: Public ordinary functions
empty-fbo-params-layer-count: Public ordinary functions
empty-fbo-params-p: Private ordinary functions
empty-fbo-params-samples: Public ordinary functions
empty-fbo-params-viewport: Public ordinary functions
enable-transform-feedback: Private ordinary functions
encode-half-float: Private ordinary functions
end-scoped-gpu-query: Private ordinary functions
ensure-array-of-ssbo-binding-ranges: Private ordinary functions
ensure-array-of-ssbo-bindings-buffer-ids: Private ordinary functions
ensure-array-of-ubo-binding-ranges: Private ordinary functions
ensure-array-of-ubo-bindings-buffer-ids: Private ordinary functions
ensure-cepl-compatible-setup: Private ordinary functions
ensure-fbo-array-size: Private ordinary functions
ensure-vec-index: Public compiler macros
ensure-vec-index: Public ordinary functions
error-on-invalid-upload-formats: Private ordinary functions
escape-tildes: Private ordinary functions
establish-texture-type: Private ordinary functions
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-from-foreign: Public standalone methods
expand-lambda-defpipeline: Private ordinary functions
expand-mappable-slot-to-layout: Private ordinary functions
expand-slot-to-layout: Private ordinary functions
expand-unmappable-slot-to-layout: Private ordinary functions
extract-dimension-from-make-fbo-pattern: Private ordinary functions
extract-matching-dimension-value: Private ordinary functions

F
fallback-iuniform-func: Private ordinary functions
fallback-sampler-set: Private ordinary functions
fbo-attach-array: Private ordinary functions
fbo-attach-render-buffer: Private ordinary functions
fbo-bound: Public ordinary functions
fbo-color-arrays: Private ordinary functions
fbo-detach: Private ordinary functions
fbo-empty-p: Public ordinary functions
fbo-gen-attach: Private ordinary functions
fbo-p: Public ordinary functions
file-to-string: Public ordinary functions
filter-hash: Public ordinary functions
find-compatible-c-array-type: Private ordinary functions
find-gpu-func-spec-by-name-and-vals: Private ordinary functions
find-in-tree: Public ordinary functions
find-invalid-defpipeline-options: Private ordinary functions
find-suitable-type: Private ordinary functions
first-elem: Private ordinary functions
flatten: Public ordinary functions
float-from-foreign: Public ordinary functions
float-to-foreign: Public ordinary functions
force-bind-query: Public ordinary functions
force-bind-vao: Private ordinary functions
force-depth-test-function: Private compiler macros
force-depth-test-function: Private ordinary functions
force-sampler-bound: Private ordinary functions
force-scissor-viewport: Private ordinary functions
force-unbind-query: Public ordinary functions
force-use-program: Private ordinary functions
forget-fbo: Private ordinary functions
forget-gpu-buffer: Private ordinary functions
forget-texture: Private ordinary functions
forgiving-list-dimension-guess: Private ordinary functions
format-array-slot-for-cstruct: Private ordinary functions
format-slot-for-cstruct: Private ordinary functions
format-slot-for-varjo: Private ordinary functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free: Public generic functions
free-buffer: Public ordinary functions
free-buffer-stream: Public ordinary functions
free-buffers: Public ordinary functions
free-c-array: Public ordinary functions
free-context: Private ordinary functions
free-fbo: Private ordinary functions
free-gpu-array: Public generic functions
free-gpu-array: Public generic functions
free-gpu-array: Public generic functions
free-gpu-array-bb: Private ordinary functions
free-gpu-array-t: Private ordinary functions
free-gpu-buffer: Private ordinary functions
free-gpu-buffers: Private ordinary functions
free-gpu-fence: Public ordinary functions
free-pipeline: Public ordinary functions
free-sampler: Public ordinary functions
free-texture: Public generic functions
free-texture: Public generic functions
free-texture: Public generic functions
free-user-fbo: Private ordinary functions
free-vao: Public ordinary functions
free-vaos: Public ordinary functions
from-active: Private ordinary functions
from-suspended: Private ordinary functions
from-unitialized: Private ordinary functions
front-face: Public compiler macros
front-face: Public ordinary functions
func-key: Private generic functions
func-key: Private generic functions
func-key: Private generic functions
func-key: Private generic functions
func-key->name: Private generic functions
func-key->name: Private generic functions
func-key=: Private generic functions
func-key=: Private generic functions
func-key=: Private generic functions
func-key=: Private generic functions
func-key=: Private generic functions
funcall-g: Public ordinary functions
funcs-that-use-this-func: Private generic functions
funcs-that-use-this-func: Private generic functions
funcs-that-use-this-func: Private generic functions
funcs-these-funcs-use: Private ordinary functions
funcs-this-func-uses: Private ordinary functions
Function, %%make-buffer-texture: Public ordinary functions
Function, %%make-fbo: Public ordinary functions
Function, %%make-texture: Public ordinary functions
Function, %across-c-1d: Private ordinary functions
Function, %across-c-2d: Private ordinary functions
Function, %across-c-3d: Private ordinary functions
Function, %across-c-4d: Private ordinary functions
Function, %across-c-ptr-1d: Private ordinary functions
Function, %across-c-ptr-2d: Private ordinary functions
Function, %across-c-ptr-3d: Private ordinary functions
Function, %across-c-ptr-4d: Private ordinary functions
Function, %api-0-populate-singletons: Private ordinary functions
Function, %apply-stencil-mask: Private ordinary functions
Function, %apply-stencil-params: Private ordinary functions
Function, %attachment: Private ordinary functions
Function, %bind-fbo: Private ordinary functions
Function, %bind-ssbo: Private ordinary functions
Function, %bind-tfs-arrays: Private ordinary functions
Function, %bind-ubo: Private ordinary functions
Function, %blend-fbo: Private ordinary functions
Function, %blend-i: Private ordinary functions
Function, %blend-using-params: Private ordinary functions
Function, %calc-image-format-with-declared-format: Private ordinary functions
Function, %calc-image-format-with-lisp-type: Private ordinary functions
Function, %calc-image-format-with-pixel-format: Private ordinary functions
Function, %calc-image-format-without-declared-format: Private ordinary functions
Function, %cepl-context-array-of-bound-gpu-buffers: Private ordinary functions
Function, %cepl-context-array-of-bound-queries: Private ordinary functions
Function, %cepl-context-array-of-bound-samplers: Private ordinary functions
Function, %cepl-context-array-of-gpu-buffers: Private ordinary functions
Function, %cepl-context-array-of-ssbo-binding-ranges: Private ordinary functions
Function, %cepl-context-array-of-ssbo-bindings-buffer-ids: Private ordinary functions
Function, %cepl-context-array-of-textures: Private ordinary functions
Function, %cepl-context-array-of-transform-feedback-bindings-buffer-ids: Private ordinary functions
Function, %cepl-context-array-of-ubo-binding-ranges: Private ordinary functions
Function, %cepl-context-array-of-ubo-bindings-buffer-ids: Private ordinary functions
Function, %cepl-context-bound-thread: Private ordinary functions
Function, %cepl-context-clear-color: Private ordinary functions
Function, %cepl-context-color-masks: Private ordinary functions
Function, %cepl-context-cull-face: Private ordinary functions
Function, %cepl-context-current-blend-params: Private ordinary functions
Function, %cepl-context-current-draw-buffers-len: Private ordinary functions
Function, %cepl-context-current-draw-buffers-ptr: Private ordinary functions
Function, %cepl-context-current-program: Private ordinary functions
Function, %cepl-context-current-scissor-viewports: Private ordinary functions
Function, %cepl-context-current-stencil-mask-back: Private ordinary functions
Function, %cepl-context-current-stencil-mask-front: Private ordinary functions
Function, %cepl-context-current-stencil-params-back: Private ordinary functions
Function, %cepl-context-current-stencil-params-front: Private ordinary functions
Function, %cepl-context-current-surface: Private ordinary functions
Function, %cepl-context-current-tfs: Private ordinary functions
Function, %cepl-context-current-viewport: Private ordinary functions
Function, %cepl-context-default-framebuffer: Private ordinary functions
Function, %cepl-context-default-viewport: Private ordinary functions
Function, %cepl-context-depth-clamp: Private ordinary functions
Function, %cepl-context-depth-func: Private ordinary functions
Function, %cepl-context-depth-mask: Private ordinary functions
Function, %cepl-context-depth-range: Private ordinary functions
Function, %cepl-context-draw-fbo-binding: Private ordinary functions
Function, %cepl-context-fbos: Private ordinary functions
Function, %cepl-context-front-face: Private ordinary functions
Function, %cepl-context-gl-context: Private ordinary functions
Function, %cepl-context-gl-version-float: Private ordinary functions
Function, %cepl-context-id: Private ordinary functions
Function, %cepl-context-instance-count: Private ordinary functions
Function, %cepl-context-max-draw-buffer-count: Private ordinary functions
Function, %cepl-context-pack-alignment: Private ordinary functions
Function, %cepl-context-read-fbo-binding: Private ordinary functions
Function, %cepl-context-requested-gl-version: Private ordinary functions
Function, %cepl-context-shared: Private ordinary functions
Function, %cepl-context-surfaces: Private ordinary functions
Function, %cepl-context-uninitialized-resources: Private ordinary functions
Function, %cepl-context-unpack-alignment: Private ordinary functions
Function, %cepl-context-vao-binding-id: Private ordinary functions
Function, %cffi-type->gl-enum: Private ordinary functions
Function, %clear-attachments: Private ordinary functions
Function, %clear-current-fbo: Private ordinary functions
Function, %clear-fbo-known-attachments: Private ordinary functions
Function, %clear-fbo-unknown-attachments: Private ordinary functions
Function, %clear-fbo-with-explicit-attachments: Private ordinary functions
Function, %clear-fbos-attachments: Private ordinary functions
Function, %clear-known-attachments: Private ordinary functions
Function, %clear-known-attachments-no-restore: Private ordinary functions
Function, %clear-unknown-attachments: Private ordinary functions
Function, %clear-unknown-attachments-no-restore: Private ordinary functions
Function, %color-mask: Private ordinary functions
Function, %color-masks: Private ordinary functions
Function, %compile-closure: Private ordinary functions
Function, %compile-link-and-upload: Private ordinary functions
Function, %copy-compile-context: Private ordinary functions
Function, %create-implicit-uniform-uploader: Private ordinary functions
Function, %cull-face: Private ordinary functions
Function, %current-blend-params: Private ordinary functions
Function, %current-stencil-params: Private ordinary functions
Function, %current-viewport: Private ordinary functions
Function, %decode-half-float: Private ordinary functions
Function, %def-complete-pipeline: Private ordinary functions
Function, %def-gpu-function: Private ordinary functions
Function, %def-partial-pipeline: Private ordinary functions
Function, %defn: Private ordinary functions
Function, %defpipeline-gfuncs: Private ordinary functions
Function, %delete-sampler: Private ordinary functions
Function, %depth-clamp: Private ordinary functions
Function, %depth-mask: Private ordinary functions
Function, %depth-range-vec2: Private ordinary functions
Function, %depth-test-function: Private ordinary functions
Function, %empty-fbo-params-dimensions: Public ordinary functions
Function, %empty-fbo-params-fbo: Public ordinary functions
Function, %empty-fbo-params-fixed-sample-locations-p: Public ordinary functions
Function, %empty-fbo-params-layer-count: Public ordinary functions
Function, %empty-fbo-params-samples: Public ordinary functions
Function, %empty-fbo-params-viewport: Public ordinary functions
Function, %encode-half-float: Private ordinary functions
Function, %fbo-attachment-count: Public ordinary functions
Function, %fbo-blending-params: Public ordinary functions
Function, %fbo-clear-mask: Public ordinary functions
Function, %fbo-color-arrays: Public ordinary functions
Function, %fbo-color-arrays-fill-pointer: Public ordinary functions
Function, %fbo-depth-array: Public ordinary functions
Function, %fbo-draw-buffer-map: Public ordinary functions
Function, %fbo-empty-params: Public ordinary functions
Function, %fbo-id: Public ordinary functions
Function, %fbo-is-default: Public ordinary functions
Function, %fbo-owns: Private ordinary functions
Function, %fbo-stencil-array: Public ordinary functions
Function, %find-tex-image-format: Private ordinary functions
Function, %force-depth-test-function: Private ordinary functions
Function, %front-face: Private ordinary functions
Function, %gen-attachment-blend: Private ordinary functions
Function, %gen-pass-key: Private ordinary functions
Function, %gen-texture: Private ordinary functions
Function, %get-default-texture-format: Private ordinary functions
Function, %get-id: Private ordinary functions
Function, %gl-calc-byte-size: Private ordinary functions
Function, %gl-make-shader-from-varjo: Private ordinary functions
Function, %gpu-fence-obj: Public ordinary functions
Function, %implicit-uniforms-dont-have-type-mismatches: Private ordinary functions
Function, %inner-with-context: Private ordinary functions
Function, %loop-setting-per-attachment-blend-params: Private ordinary functions
Function, %make-buffer-stream: Private ordinary functions
Function, %make-buffer-texture: Private ordinary functions
Function, %make-c-array: Public ordinary functions
Function, %make-cepl-context: Private ordinary functions
Function, %make-cube-texture: Private ordinary functions
Function, %make-default-framebuffer: Private ordinary functions
Function, %make-glsl-stage-spec: Private ordinary functions
Function, %make-gpu-array: Public ordinary functions
Function, %make-gpu-array-bb: Public ordinary functions
Function, %make-gpu-array-t: Public ordinary functions
Function, %make-gpu-buffer: Public ordinary functions
Function, %make-gpu-fence: Public ordinary functions
Function, %make-gpu-func-spec: Private ordinary functions
Function, %make-render-buffer: Public ordinary functions
Function, %make-sampler: Public ordinary functions
Function, %make-ssbo: Public ordinary functions
Function, %make-stand-in-lisp-func-for-glsl-stage: Private ordinary functions
Function, %make-stencil-params: Public ordinary functions
Function, %make-texture: Private ordinary functions
Function, %make-texture-with-lisp-data: Private ordinary functions
Function, %make-tfs: Public ordinary functions
Function, %make-ubo: Public ordinary functions
Function, %make-viewport: Public ordinary functions
Function, %memcpy: Private ordinary functions
Function, %pack-alignment: Private ordinary functions
Function, %per-attachment-blending-available-p: Private ordinary functions
Function, %post-init: Private ordinary functions
Function, %print-mem: Private ordinary functions
Function, %process-with-gpu-array-range-macro-args: Private ordinary functions
Function, %process-with-gpu-array-range-runtime: Private ordinary functions
Function, %pull-spec-common: Private ordinary functions
Function, %register-ssbo-id: Private ordinary functions
Function, %register-ubo-id: Private ordinary functions
Function, %render-buffer-id: Public ordinary functions
Function, %render-buffer-image-format: Public ordinary functions
Function, %render-buffer-multisample-p: Public ordinary functions
Function, %render-buffer-resolution: Public ordinary functions
Function, %sampler-anisotropy: Public ordinary functions
Function, %sampler-border-color: Public ordinary functions
Function, %sampler-compare: Public ordinary functions
Function, %sampler-context-id: Private ordinary functions
Function, %sampler-expects-depth: Public ordinary functions
Function, %sampler-expects-mipmap: Public ordinary functions
Function, %sampler-id: Public ordinary functions
Function, %sampler-id-box: Public ordinary functions
Function, %sampler-lod-bias: Public ordinary functions
Function, %sampler-magnify-filter: Public ordinary functions
Function, %sampler-max-lod: Public ordinary functions
Function, %sampler-min-lod: Public ordinary functions
Function, %sampler-minify-filter: Public ordinary functions
Function, %sampler-texture: Public ordinary functions
Function, %sampler-type: Public ordinary functions
Function, %sampler-wrap: Public ordinary functions
Function, %scissor-viewport: Private ordinary functions
Function, %set-anisotropy: Private ordinary functions
Function, %set-border-color: Private ordinary functions
Function, %set-color-mask: Private ordinary functions
Function, %set-color-masks: Private ordinary functions
Function, %set-compare: Private ordinary functions
Function, %set-cull-face: Private ordinary functions
Function, %set-current-blend-params: Private ordinary functions
Function, %set-current-blend-params-from-fbo: Private ordinary functions
Function, %set-current-viewport: Private ordinary functions
Function, %set-default-fbo-and-viewport: Private ordinary functions
Function, %set-default-fbo-viewport: Private ordinary functions
Function, %set-depth-clamp: Private ordinary functions
Function, %set-depth-mask: Private ordinary functions
Function, %set-depth-range-vec2: Private ordinary functions
Function, %set-depth-test-function: Private ordinary functions
Function, %set-draw-fbo-no-check: Private ordinary functions
Function, %set-fbo-bound: Private ordinary functions
Function, %set-fbo-no-check: Private ordinary functions
Function, %set-front-face: Private ordinary functions
Function, %set-lod-bias: Private ordinary functions
Function, %set-magnify-filter: Private ordinary functions
Function, %set-max-lod: Private ordinary functions
Function, %set-min-lod: Private ordinary functions
Function, %set-minify-filter: Private ordinary functions
Function, %set-pack-alignment: Private ordinary functions
Function, %set-read-fbo-no-check: Private ordinary functions
Function, %set-resolution: Private ordinary functions
Function, %set-scissor-viewport: Private ordinary functions
Function, %set-unpack-alignment: Private ordinary functions
Function, %set-wrap: Private ordinary functions
Function, %stencil-mask: Private ordinary functions
Function, %stencil-params-mask: Public ordinary functions
Function, %stencil-params-on-stencil-pass-depth-test-fail: Public ordinary functions
Function, %stencil-params-on-stencil-pass-depth-test-pass: Public ordinary functions
Function, %stencil-params-on-stencil-test-fail: Public ordinary functions
Function, %stencil-params-test: Public ordinary functions
Function, %stencil-params-value: Public ordinary functions
Function, %test-&-process-spec: Private ordinary functions
Function, %texture-dimensions: Private ordinary functions
Function, %tfs-arrays: Public ordinary functions
Function, %tfs-bound: Public ordinary functions
Function, %tfs-current-prog-id: Public ordinary functions
Function, %tfs-pending-arrays: Public ordinary functions
Function, %unbind-fbo: Private ordinary functions
Function, %unbind-tfs-arrays: Private ordinary functions
Function, %unpack-alignment: Private ordinary functions
Function, %update-default-framebuffer-dimensions: Private ordinary functions
Function, %update-fbo-state: Private ordinary functions
Function, %update-glsl-stage-data: Private ordinary functions
Function, %update-gpu-function-data: Private ordinary functions
Function, %upload-tex: Private ordinary functions
Function, %valid-index-type-p: Private ordinary functions
Function, %varjo-compile-as-pipeline: Private ordinary functions
Function, %viewport-origin-x: Public ordinary functions
Function, %viewport-origin-y: Public ordinary functions
Function, %viewport-resolution-x: Public ordinary functions
Function, %viewport-resolution-y: Public ordinary functions
Function, %with-context: Private ordinary functions
Function, (setf %attachment): Private ordinary functions
Function, (setf %cepl-context-array-of-bound-gpu-buffers): Private ordinary functions
Function, (setf %cepl-context-array-of-bound-queries): Private ordinary functions
Function, (setf %cepl-context-array-of-bound-samplers): Private ordinary functions
Function, (setf %cepl-context-array-of-gpu-buffers): Private ordinary functions
Function, (setf %cepl-context-array-of-ssbo-binding-ranges): Private ordinary functions
Function, (setf %cepl-context-array-of-ssbo-bindings-buffer-ids): Private ordinary functions
Function, (setf %cepl-context-array-of-textures): Private ordinary functions
Function, (setf %cepl-context-array-of-transform-feedback-bindings-buffer-ids): Private ordinary functions
Function, (setf %cepl-context-array-of-ubo-binding-ranges): Private ordinary functions
Function, (setf %cepl-context-array-of-ubo-bindings-buffer-ids): Private ordinary functions
Function, (setf %cepl-context-bound-thread): Private ordinary functions
Function, (setf %cepl-context-clear-color): Private ordinary functions
Function, (setf %cepl-context-color-masks): Private ordinary functions
Function, (setf %cepl-context-cull-face): Private ordinary functions
Function, (setf %cepl-context-current-blend-params): Private ordinary functions
Function, (setf %cepl-context-current-draw-buffers-len): Private ordinary functions
Function, (setf %cepl-context-current-draw-buffers-ptr): Private ordinary functions
Function, (setf %cepl-context-current-program): Private ordinary functions
Function, (setf %cepl-context-current-scissor-viewports): Private ordinary functions
Function, (setf %cepl-context-current-stencil-mask-back): Private ordinary functions
Function, (setf %cepl-context-current-stencil-mask-front): Private ordinary functions
Function, (setf %cepl-context-current-stencil-params-back): Private ordinary functions
Function, (setf %cepl-context-current-stencil-params-front): Private ordinary functions
Function, (setf %cepl-context-current-surface): Private ordinary functions
Function, (setf %cepl-context-current-tfs): Private ordinary functions
Function, (setf %cepl-context-current-viewport): Private ordinary functions
Function, (setf %cepl-context-default-framebuffer): Private ordinary functions
Function, (setf %cepl-context-default-viewport): Private ordinary functions
Function, (setf %cepl-context-depth-clamp): Private ordinary functions
Function, (setf %cepl-context-depth-func): Private ordinary functions
Function, (setf %cepl-context-depth-mask): Private ordinary functions
Function, (setf %cepl-context-depth-range): Private ordinary functions
Function, (setf %cepl-context-draw-fbo-binding): Private ordinary functions
Function, (setf %cepl-context-fbos): Private ordinary functions
Function, (setf %cepl-context-front-face): Private ordinary functions
Function, (setf %cepl-context-gl-context): Private ordinary functions
Function, (setf %cepl-context-gl-version-float): Private ordinary functions
Function, (setf %cepl-context-id): Private ordinary functions
Function, (setf %cepl-context-instance-count): Private ordinary functions
Function, (setf %cepl-context-max-draw-buffer-count): Private ordinary functions
Function, (setf %cepl-context-pack-alignment): Private ordinary functions
Function, (setf %cepl-context-read-fbo-binding): Private ordinary functions
Function, (setf %cepl-context-requested-gl-version): Private ordinary functions
Function, (setf %cepl-context-shared): Private ordinary functions
Function, (setf %cepl-context-surfaces): Private ordinary functions
Function, (setf %cepl-context-uninitialized-resources): Private ordinary functions
Function, (setf %cepl-context-unpack-alignment): Private ordinary functions
Function, (setf %cepl-context-vao-binding-id): Private ordinary functions
Function, (setf %empty-fbo-params-dimensions): Public ordinary functions
Function, (setf %empty-fbo-params-fbo): Public ordinary functions
Function, (setf %empty-fbo-params-fixed-sample-locations-p): Public ordinary functions
Function, (setf %empty-fbo-params-layer-count): Public ordinary functions
Function, (setf %empty-fbo-params-samples): Public ordinary functions
Function, (setf %empty-fbo-params-viewport): Public ordinary functions
Function, (setf %fbo-attachment-count): Public ordinary functions
Function, (setf %fbo-blending-params): Public ordinary functions
Function, (setf %fbo-clear-mask): Public ordinary functions
Function, (setf %fbo-color-arrays): Public ordinary functions
Function, (setf %fbo-color-arrays-fill-pointer): Public ordinary functions
Function, (setf %fbo-depth-array): Public ordinary functions
Function, (setf %fbo-draw-buffer-map): Public ordinary functions
Function, (setf %fbo-empty-params): Public ordinary functions
Function, (setf %fbo-id): Public ordinary functions
Function, (setf %fbo-is-default): Public ordinary functions
Function, (setf %fbo-owns): Private ordinary functions
Function, (setf %fbo-stencil-array): Public ordinary functions
Function, (setf %gpu-fence-obj): Public ordinary functions
Function, (setf %render-buffer-id): Public ordinary functions
Function, (setf %render-buffer-image-format): Public ordinary functions
Function, (setf %render-buffer-multisample-p): Public ordinary functions
Function, (setf %render-buffer-resolution): Public ordinary functions
Function, (setf %sampler-anisotropy): Public ordinary functions
Function, (setf %sampler-border-color): Public ordinary functions
Function, (setf %sampler-compare): Public ordinary functions
Function, (setf %sampler-context-id): Private ordinary functions
Function, (setf %sampler-expects-depth): Public ordinary functions
Function, (setf %sampler-expects-mipmap): Public ordinary functions
Function, (setf %sampler-id): Public ordinary functions
Function, (setf %sampler-id-box): Public ordinary functions
Function, (setf %sampler-lod-bias): Public ordinary functions
Function, (setf %sampler-magnify-filter): Public ordinary functions
Function, (setf %sampler-max-lod): Public ordinary functions
Function, (setf %sampler-min-lod): Public ordinary functions
Function, (setf %sampler-minify-filter): Public ordinary functions
Function, (setf %sampler-texture): Public ordinary functions
Function, (setf %sampler-type): Public ordinary functions
Function, (setf %sampler-wrap): Public ordinary functions
Function, (setf %tfs-arrays): Public ordinary functions
Function, (setf %tfs-bound): Public ordinary functions
Function, (setf %tfs-current-prog-id): Public ordinary functions
Function, (setf %tfs-pending-arrays): Public ordinary functions
Function, (setf %viewport-origin-x): Public ordinary functions
Function, (setf %viewport-origin-y): Public ordinary functions
Function, (setf %viewport-resolution-x): Public ordinary functions
Function, (setf %viewport-resolution-y): Public ordinary functions
Function, (setf anisotropy): Public ordinary functions
Function, (setf any-samples-passed-conservative-query-active-p): Private ordinary functions
Function, (setf any-samples-passed-query-active-p): Private ordinary functions
Function, (setf aref-c): Public ordinary functions
Function, (setf aref-c*): Public ordinary functions
Function, (setf aref-c*-1d): Private ordinary functions
Function, (setf aref-c*-2d): Private ordinary functions
Function, (setf aref-c*-3d): Private ordinary functions
Function, (setf aref-c*-4d): Private ordinary functions
Function, (setf arrays-indirect-command-base-instance): Public ordinary functions
Function, (setf arrays-indirect-command-count): Public ordinary functions
Function, (setf arrays-indirect-command-first): Public ordinary functions
Function, (setf arrays-indirect-command-instance-count): Public ordinary functions
Function, (setf arrays-indirect-command-pointer): Private ordinary functions
Function, (setf att-array): Public ordinary functions
Function, (setf att-blend): Public ordinary functions
Function, (setf att-bparams): Public ordinary functions
Function, (setf att-owned-p): Public ordinary functions
Function, (setf att-viewport): Public ordinary functions
Function, (setf attachment): Public ordinary functions
Function, (setf attachment-blending): Public ordinary functions
Function, (setf base-gstruct-wrapper-pointer): Private ordinary functions
Function, (setf blending-params): Public ordinary functions
Function, (setf blending-params-destination-alpha): Public ordinary functions
Function, (setf blending-params-destination-rgb): Public ordinary functions
Function, (setf blending-params-mode-alpha): Public ordinary functions
Function, (setf blending-params-mode-rgb): Public ordinary functions
Function, (setf blending-params-source-alpha): Public ordinary functions
Function, (setf blending-params-source-rgb): Public ordinary functions
Function, (setf boop-x): Private ordinary functions
Function, (setf boop-y): Private ordinary functions
Function, (setf border-color): Private ordinary functions
Function, (setf border-color): Private ordinary functions
Function, (setf buffer-stream-%index-type-enum): Public ordinary functions
Function, (setf buffer-stream-%index-type-size): Public ordinary functions
Function, (setf buffer-stream-%primitive): Public ordinary functions
Function, (setf buffer-stream-%start): Public ordinary functions
Function, (setf buffer-stream-%start-byte): Public ordinary functions
Function, (setf buffer-stream-base-vertex): Public ordinary functions
Function, (setf buffer-stream-draw-mode-val): Public ordinary functions
Function, (setf buffer-stream-gpu-arrays): Public ordinary functions
Function, (setf buffer-stream-index-type): Public ordinary functions
Function, (setf buffer-stream-length): Public ordinary functions
Function, (setf buffer-stream-managed): Public ordinary functions
Function, (setf buffer-stream-patch-length): Public ordinary functions
Function, (setf buffer-stream-primitive): Public ordinary functions
Function, (setf buffer-stream-primitive-group-id): Public ordinary functions
Function, (setf buffer-stream-start): Public ordinary functions
Function, (setf buffer-stream-start-byte): Public ordinary functions
Function, (setf buffer-stream-vao): Public ordinary functions
Function, (setf buffer-texture-allocated-p): Private ordinary functions
Function, (setf buffer-texture-backing-array): Public ordinary functions
Function, (setf buffer-texture-base-dimensions): Private ordinary functions
Function, (setf buffer-texture-cache-id): Private ordinary functions
Function, (setf buffer-texture-cubes-p): Private ordinary functions
Function, (setf buffer-texture-fixed-sample-locations-p): Private ordinary functions
Function, (setf buffer-texture-id): Private ordinary functions
Function, (setf buffer-texture-image-format): Private ordinary functions
Function, (setf buffer-texture-last-sampler-id): Private ordinary functions
Function, (setf buffer-texture-layer-count): Private ordinary functions
Function, (setf buffer-texture-mipmap-levels): Private ordinary functions
Function, (setf buffer-texture-mutable-p): Private ordinary functions
Function, (setf buffer-texture-owns-array): Public ordinary functions
Function, (setf buffer-texture-samples): Private ordinary functions
Function, (setf buffer-texture-type): Private ordinary functions
Function, (setf c-array-byte-size): Public ordinary functions
Function, (setf c-array-dimensions): Public ordinary functions
Function, (setf c-array-element-from-foreign): Public ordinary functions
Function, (setf c-array-element-pixel-format): Public ordinary functions
Function, (setf c-array-element-to-foreign): Public ordinary functions
Function, (setf c-array-element-type): Public ordinary functions
Function, (setf c-array-free): Public ordinary functions
Function, (setf c-array-pointer): Public ordinary functions
Function, (setf c-array-row-alignment): Public ordinary functions
Function, (setf c-array-sizes): Public ordinary functions
Function, (setf c-array-struct-element-typep): Public ordinary functions
Function, (setf c-array-total-size): Public ordinary functions
Function, (setf clear-color): Public ordinary functions
Function, (setf color-mask): Public ordinary functions
Function, (setf color-masks): Public ordinary functions
Function, (setf compare): Public ordinary functions
Function, (setf compile-context-primitive): Private ordinary functions
Function, (setf compile-context-stage): Private ordinary functions
Function, (setf compile-context-static-p): Private ordinary functions
Function, (setf compile-context-versions): Private ordinary functions
Function, (setf compute-space-as-uvec3): Public ordinary functions
Function, (setf compute-space-dimensions): Public ordinary functions
Function, (setf compute-space-size-x): Public ordinary functions
Function, (setf compute-space-size-y): Public ordinary functions
Function, (setf compute-space-size-z): Public ordinary functions
Function, (setf cull-face): Public ordinary functions
Function, (setf current-stencil-params): Public ordinary functions
Function, (setf delayed-thunk): Private ordinary functions
Function, (setf delayed-waiting-on): Private ordinary functions
Function, (setf depth-clamp): Public ordinary functions
Function, (setf depth-mask): Public ordinary functions
Function, (setf depth-range-vec2): Public ordinary functions
Function, (setf depth-test-function): Public ordinary functions
Function, (setf destination-alpha): Public ordinary functions
Function, (setf destination-rgb): Public ordinary functions
Function, (setf draw-fbo-bound): Public ordinary functions
Function, (setf elements-indirect-command-base-instance): Public ordinary functions
Function, (setf elements-indirect-command-base-vertex): Public ordinary functions
Function, (setf elements-indirect-command-count): Public ordinary functions
Function, (setf elements-indirect-command-first-index): Public ordinary functions
Function, (setf elements-indirect-command-instance-count): Public ordinary functions
Function, (setf elements-indirect-command-pointer): Private ordinary functions
Function, (setf empty-fbo-params-dimensions): Public ordinary functions
Function, (setf empty-fbo-params-fixed-sample-locations-p): Public ordinary functions
Function, (setf empty-fbo-params-layer-count): Public ordinary functions
Function, (setf empty-fbo-params-samples): Public ordinary functions
Function, (setf fbo-bound): Public ordinary functions
Function, (setf front-face): Public ordinary functions
Function, (setf function-keyed-pipeline): Private ordinary functions
Function, (setf g-pc-pointer): Private ordinary functions
Function, (setf g-pn-pointer): Private ordinary functions
Function, (setf g-pnb-pointer): Private ordinary functions
Function, (setf g-pnc-pointer): Private ordinary functions
Function, (setf g-pncb-pointer): Private ordinary functions
Function, (setf g-pnt-pointer): Private ordinary functions
Function, (setf g-pntb-pointer): Private ordinary functions
Function, (setf g-pntc-pointer): Private ordinary functions
Function, (setf g-pntcb-pointer): Private ordinary functions
Function, (setf g-pt-pointer): Private ordinary functions
Function, (setf g-struct-info): Private ordinary functions
Function, (setf glambda-state-pipeline): Private ordinary functions
Function, (setf glambda-state-recompiler): Private ordinary functions
Function, (setf glambda-state-spec): Private ordinary functions
Function, (setf gpu-array-bb-access-style): Public ordinary functions
Function, (setf gpu-array-bb-buffer): Public ordinary functions
Function, (setf gpu-array-bb-byte-size): Public ordinary functions
Function, (setf gpu-array-bb-dimensions): Private ordinary functions
Function, (setf gpu-array-bb-element-byte-size): Public ordinary functions
Function, (setf gpu-array-bb-element-pixel-format): Public ordinary functions
Function, (setf gpu-array-bb-element-type): Public ordinary functions
Function, (setf gpu-array-bb-offset-in-bytes-into-buffer): Public ordinary functions
Function, (setf gpu-array-bb-row-alignment): Public ordinary functions
Function, (setf gpu-array-dimensions): Public ordinary functions
Function, (setf gpu-array-t-dimensions): Private ordinary functions
Function, (setf gpu-array-t-face-num): Public ordinary functions
Function, (setf gpu-array-t-image-format): Public ordinary functions
Function, (setf gpu-array-t-layer-num): Public ordinary functions
Function, (setf gpu-array-t-level-num): Public ordinary functions
Function, (setf gpu-array-t-texture): Public ordinary functions
Function, (setf gpu-array-t-texture-type): Public ordinary functions
Function, (setf gpu-buffer-arrays): Public ordinary functions
Function, (setf gpu-buffer-bound): Public ordinary functions
Function, (setf gpu-buffer-cache-id): Public ordinary functions
Function, (setf gpu-buffer-id): Public ordinary functions
Function, (setf lod-bias): Public ordinary functions
Function, (setf magnify-filter): Public ordinary functions
Function, (setf max-lod): Public ordinary functions
Function, (setf min-lod): Public ordinary functions
Function, (setf minify-filter): Public ordinary functions
Function, (setf mode-alpha): Public ordinary functions
Function, (setf mode-rgb): Public ordinary functions
Function, (setf pack-alignment): Public ordinary functions
Function, (setf pipeline-spec): Private ordinary functions
Function, (setf pipeline-state-diff-tag): Private ordinary functions
Function, (setf pipeline-state-enable-rasterizer): Private ordinary functions
Function, (setf pipeline-state-implicit-uniform-upload-func): Private ordinary functions
Function, (setf pipeline-state-prog-ids): Private ordinary functions
Function, (setf pipeline-state-tfs-array-count): Private ordinary functions
Function, (setf pipeline-state-tfs-primitive): Private ordinary functions
Function, (setf pipeline-state-uniform-int-ids): Private ordinary functions
Function, (setf pipeline-state-uniform-uint-ids): Private ordinary functions
Function, (setf pixel-format-comp-length): Public ordinary functions
Function, (setf pixel-format-components): Public ordinary functions
Function, (setf pixel-format-normalize): Public ordinary functions
Function, (setf pixel-format-reversed): Public ordinary functions
Function, (setf pixel-format-sizes): Public ordinary functions
Function, (setf pixel-format-type): Public ordinary functions
Function, (setf primitives-generated-query-active-p): Private ordinary functions
Function, (setf read-fbo-bound): Public ordinary functions
Function, (setf row-major-aref-c): Public ordinary functions
Function, (setf sampler-id-box-id): Public ordinary functions
Function, (setf sampler-id-box-shared-p): Public ordinary functions
Function, (setf samples-passed-query-active-p): Private ordinary functions
Function, (setf scissor-viewport): Public ordinary functions
Function, (setf scoped-gpu-query-active-p): Public ordinary functions
Function, (setf source-alpha): Public ordinary functions
Function, (setf source-rgb): Public ordinary functions
Function, (setf ssbo-data): Public ordinary functions
Function, (setf ssbo-id): Public ordinary functions
Function, (setf ssbo-index): Public ordinary functions
Function, (setf ssbo-owns-gpu-array): Public ordinary functions
Function, (setf stencil-mask): Public ordinary functions
Function, (setf surface-dimensions): Public ordinary functions
Function, (setf surface-fullscreen-p): Public ordinary functions
Function, (setf surface-resolution): Public ordinary functions
Function, (setf surface-title): Public ordinary functions
Function, (setf tex-compare): Private ordinary functions
Function, (setf tex-lod-bias): Private ordinary functions
Function, (setf tex-magnify-filter): Private ordinary functions
Function, (setf tex-max-lod): Private ordinary functions
Function, (setf tex-min-lod): Private ordinary functions
Function, (setf tex-minify-filter): Private ordinary functions
Function, (setf tex-wrap): Private ordinary functions
Function, (setf texture-allocated-p): Public ordinary functions
Function, (setf texture-base-dimensions): Public ordinary functions
Function, (setf texture-cache-id): Public ordinary functions
Function, (setf texture-cubes-p): Public ordinary functions
Function, (setf texture-fixed-sample-locations-p): Public ordinary functions
Function, (setf texture-id): Public ordinary functions
Function, (setf texture-image-format): Public ordinary functions
Function, (setf texture-last-sampler-id): Public ordinary functions
Function, (setf texture-layer-count): Public ordinary functions
Function, (setf texture-mipmap-levels): Public ordinary functions
Function, (setf texture-mutable-p): Public ordinary functions
Function, (setf texture-samples): Public ordinary functions
Function, (setf texture-type): Public ordinary functions
Function, (setf time-elapsed-query-active-p): Private ordinary functions
Function, (setf transform-feedback-primitives-written-query-active-p): Private ordinary functions
Function, (setf transform-feedback-stream-arrays): Public ordinary functions
Function, (setf ubo-data): Public ordinary functions
Function, (setf ubo-id): Public ordinary functions
Function, (setf ubo-index): Public ordinary functions
Function, (setf ubo-owns-gpu-array): Public ordinary functions
Function, (setf uidx-int): Private ordinary functions
Function, (setf uidx-uint): Private ordinary functions
Function, (setf unbound-cepl-context-consumed): Private ordinary functions
Function, (setf unbound-cepl-context-gl-context): Private ordinary functions
Function, (setf unbound-cepl-context-requested-gl-version): Private ordinary functions
Function, (setf unbound-cepl-context-shared): Private ordinary functions
Function, (setf unbound-cepl-context-surface): Private ordinary functions
Function, (setf unbound-cepl-context-surfaces): Private ordinary functions
Function, (setf unpack-alignment): Public ordinary functions
Function, (setf vao-bound): Public ordinary functions
Function, (setf viewport-dimensions): Public ordinary functions
Function, (setf viewport-origin): Public ordinary functions
Function, (setf viewport-origin-i): Public ordinary functions
Function, (setf viewport-resolution): Public ordinary functions
Function, (setf wrap): Public ordinary functions
Function, 1d-p: Public ordinary functions
Function, across-c: Private ordinary functions
Function, across-c-ptr: Public ordinary functions
Function, active-p: Private ordinary functions
Function, active-texture-num: Public ordinary functions
Function, add-compile-results-to-pipeline: Private ordinary functions
Function, add-layout-to-struct-uniforms: Private ordinary functions
Function, add-surface: Public ordinary functions
Function, adjust-gpu-array: Public ordinary functions
Function, aggregate-uniforms: Private ordinary functions
Function, allocate-immutable-texture: Private ordinary functions
Function, allocate-mutable-texture: Private ordinary functions
Function, allocate-texture: Private ordinary functions
Function, always: Public ordinary functions
Function, anisotropy: Public ordinary functions
Function, any-samples-passed-conservative-query-active-p: Private ordinary functions
Function, any-samples-passed-conservative-query-cache-id: Private ordinary functions
Function, any-samples-passed-conservative-query-enum: Private ordinary functions
Function, any-samples-passed-conservative-query-id: Private ordinary functions
Function, any-samples-passed-conservative-query-p: Private ordinary functions
Function, any-samples-passed-query-active-p: Private ordinary functions
Function, any-samples-passed-query-cache-id: Private ordinary functions
Function, any-samples-passed-query-enum: Private ordinary functions
Function, any-samples-passed-query-id: Private ordinary functions
Function, any-samples-passed-query-p: Private ordinary functions
Function, arange: Public ordinary functions
Function, arangei: Public ordinary functions
Function, aref-c: Public ordinary functions
Function, aref-c*: Public ordinary functions
Function, aref-c*-1d: Private ordinary functions
Function, aref-c*-2d: Private ordinary functions
Function, aref-c*-3d: Private ordinary functions
Function, aref-c*-4d: Private ordinary functions
Function, arrays-indirect-command-base-instance: Public ordinary functions
Function, arrays-indirect-command-count: Public ordinary functions
Function, arrays-indirect-command-first: Public ordinary functions
Function, arrays-indirect-command-instance-count: Public ordinary functions
Function, arrays-indirect-command-p: Private ordinary functions
Function, arrays-indirect-command-pointer: Private ordinary functions
Function, assendingp: Private ordinary functions
Function, assert-arg-format: Private ordinary functions
Function, assert-glsl-arg-format: Private ordinary functions
Function, assert-glsl-stage-types: Private ordinary functions
Function, assert-layout-consistent: Private ordinary functions
Function, assert-no-other-context-is-bound-to-thread: Private ordinary functions
Function, assert-valid-args-for-buffer-backed-texture: Private ordinary functions
Function, assert-valid-gpipe-form: Private ordinary functions
Function, assert-valid-gpipe-shader-implicit-form: Private ordinary functions
Function, assert-valid-gpu-function-args: Private ordinary functions
Function, assert-valid-stage-specs: Private ordinary functions
Function, assocr: Public ordinary functions
Function, att-array: Public ordinary functions
Function, att-blend: Public ordinary functions
Function, att-bparams: Public ordinary functions
Function, att-owned-p: Public ordinary functions
Function, att-p: Private ordinary functions
Function, att-viewport: Public ordinary functions
Function, attachment: Public ordinary functions
Function, attachment-blending: Public ordinary functions
Function, attachment-compatible: Private ordinary functions
Function, attachment-pattern: Public ordinary functions
Function, attachment-tex: Public ordinary functions
Function, attachment-viewport: Public ordinary functions
Function, attachment-viewport-allowing-t: Private ordinary functions
Function, backed-by: Public ordinary functions
Function, bake-and-g->: Private ordinary functions
Function, bake-uniforms: Public ordinary functions
Function, base-gstruct-wrapper-p: Private ordinary functions
Function, base-gstruct-wrapper-pointer: Private ordinary functions
Function, begin-scoped-gpu-query: Private ordinary functions
Function, bind-scratch-texture: Private ordinary functions
Function, blank-buffer-object: Private ordinary functions
Function, blank-buffer-stream: Private ordinary functions
Function, blank-c-array-object: Private ordinary functions
Function, blank-gpu-array-b-object: Private ordinary functions
Function, blank-texture-object: Private ordinary functions
Function, blend-func-namep: Private ordinary functions
Function, blending-params: Public ordinary functions
Function, blending-params-destination-alpha: Public ordinary functions
Function, blending-params-destination-rgb: Public ordinary functions
Function, blending-params-mode-alpha: Public ordinary functions
Function, blending-params-mode-rgb: Public ordinary functions
Function, blending-params-p: Public ordinary functions
Function, blending-params-source-alpha: Public ordinary functions
Function, blending-params-source-rgb: Public ordinary functions
Function, boop-p: Private ordinary functions
Function, boop-x: Private ordinary functions
Function, boop-y: Private ordinary functions
Function, border-color: Private ordinary functions
Function, buffer-bound-static: Private ordinary functions
Function, buffer-data: Public ordinary functions
Function, buffer-data-raw: Public ordinary functions
Function, buffer-kind->cache-index: Private ordinary functions
Function, buffer-kind->enum: Private ordinary functions
Function, buffer-reserve-block: Public ordinary functions
Function, buffer-reserve-block-raw: Private ordinary functions
Function, buffer-reserve-blocks-from-sizes: Private ordinary functions
Function, buffer-set-arrays-from-sizes: Private ordinary functions
Function, buffer-stream-%index-type-enum: Public ordinary functions
Function, buffer-stream-%index-type-size: Public ordinary functions
Function, buffer-stream-%primitive: Public ordinary functions
Function, buffer-stream-%start: Public ordinary functions
Function, buffer-stream-%start-byte: Public ordinary functions
Function, buffer-stream-base-vertex: Public ordinary functions
Function, buffer-stream-compatible-typep: Private ordinary functions
Function, buffer-stream-draw-mode-val: Public ordinary functions
Function, buffer-stream-gpu-arrays: Public ordinary functions
Function, buffer-stream-index-type: Public ordinary functions
Function, buffer-stream-length: Public ordinary functions
Function, buffer-stream-managed: Public ordinary functions
Function, buffer-stream-p: Public ordinary functions
Function, buffer-stream-patch-length: Public ordinary functions
Function, buffer-stream-primitive: Public ordinary functions
Function, buffer-stream-primitive-group-id: Public ordinary functions
Function, buffer-stream-start: Public ordinary functions
Function, buffer-stream-start-byte: Public ordinary functions
Function, buffer-stream-vao: Public ordinary functions
Function, buffer-texture-allocated-p: Private ordinary functions
Function, buffer-texture-backing-array: Public ordinary functions
Function, buffer-texture-base-dimensions: Private ordinary functions
Function, buffer-texture-cache-id: Private ordinary functions
Function, buffer-texture-cubes-p: Private ordinary functions
Function, buffer-texture-fixed-sample-locations-p: Private ordinary functions
Function, buffer-texture-id: Private ordinary functions
Function, buffer-texture-image-format: Private ordinary functions
Function, buffer-texture-last-sampler-id: Private ordinary functions
Function, buffer-texture-layer-count: Private ordinary functions
Function, buffer-texture-mipmap-levels: Private ordinary functions
Function, buffer-texture-mutable-p: Private ordinary functions
Function, buffer-texture-owns-array: Public ordinary functions
Function, buffer-texture-p: Public ordinary functions
Function, buffer-texture-samples: Private ordinary functions
Function, buffer-texture-type: Private ordinary functions
Function, c-arr-to-lisp-struct-elems: Private ordinary functions
Function, c-arr-to-lisp-val-elems: Private ordinary functions
Function, c-array-byte-size: Public ordinary functions
Function, c-array-dimensions: Public ordinary functions
Function, c-array-element-byte-size: Public ordinary functions
Function, c-array-element-from-foreign: Public ordinary functions
Function, c-array-element-pixel-format: Public ordinary functions
Function, c-array-element-to-foreign: Public ordinary functions
Function, c-array-element-type: Public ordinary functions
Function, c-array-free: Public ordinary functions
Function, c-array-p: Public ordinary functions
Function, c-array-pointer: Public ordinary functions
Function, c-array-rank: Private ordinary functions
Function, c-array-row-alignment: Public ordinary functions
Function, c-array-sizes: Public ordinary functions
Function, c-array-struct-element-typep: Public ordinary functions
Function, c-array-total-size: Public ordinary functions
Function, calc-aligned-offset: Private ordinary functions
Function, calc-array-of-col-mat-layout: Private ordinary functions
Function, calc-array-of-scalar-or-vectors-layout: Private ordinary functions
Function, calc-array-of-structs-layout: Private ordinary functions
Function, calc-base-offset: Private ordinary functions
Function, calc-block-layout: Public ordinary functions
Function, calc-col-mat-layout: Private ordinary functions
Function, calc-feedback-style-and-names: Private ordinary functions
Function, calc-image-format: Private ordinary functions
Function, calc-layout: Private ordinary functions
Function, calc-max-num-mipmap-levels: Private ordinary functions
Function, calc-minify-filter: Private ordinary functions
Function, calc-query-get-func-for-gpu-array: Private ordinary functions
Function, calc-sampler-type: Private ordinary functions
Function, calc-scalar-layout: Private ordinary functions
Function, calc-struct-layout: Private ordinary functions
Function, calc-struct-layout-from-name-type-pairs: Public ordinary functions
Function, calc-struct-member-layout: Private ordinary functions
Function, calc-vector-base-alignment: Private ordinary functions
Function, calc-vector-layout: Private ordinary functions
Function, call-listeners: Private ordinary functions
Function, can-bind-query-p: Public ordinary functions
Function, cepl-client-wait-sync: Private ordinary functions
Function, cepl-context: Public ordinary functions
Function, cepl-context-p: Private ordinary functions
Function, cepl-describe: Public ordinary functions
Function, cepl.pipelines.arrays-indirect-command.from-foreign: Private ordinary functions
Function, cepl.pipelines.arrays-indirect-command.make: Private ordinary functions
Function, cepl.pipelines.arrays-indirect-command.to-foreign: Private ordinary functions
Function, cepl.pipelines.elements-indirect-command.from-foreign: Private ordinary functions
Function, cepl.pipelines.elements-indirect-command.make: Private ordinary functions
Function, cepl.pipelines.elements-indirect-command.to-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pc.from-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pc.make: Private ordinary functions
Function, cepl.types.predefined.g-pc.to-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pn.from-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pn.make: Private ordinary functions
Function, cepl.types.predefined.g-pn.to-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pnb.from-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pnb.make: Private ordinary functions
Function, cepl.types.predefined.g-pnb.to-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pnc.from-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pnc.make: Private ordinary functions
Function, cepl.types.predefined.g-pnc.to-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pncb.from-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pncb.make: Private ordinary functions
Function, cepl.types.predefined.g-pncb.to-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pnt.from-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pnt.make: Private ordinary functions
Function, cepl.types.predefined.g-pnt.to-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pntb.from-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pntb.make: Private ordinary functions
Function, cepl.types.predefined.g-pntb.to-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pntc.from-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pntc.make: Private ordinary functions
Function, cepl.types.predefined.g-pntc.to-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pntcb.from-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pntcb.make: Private ordinary functions
Function, cepl.types.predefined.g-pntcb.to-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pt.from-foreign: Private ordinary functions
Function, cepl.types.predefined.g-pt.make: Private ordinary functions
Function, cepl.types.predefined.g-pt.to-foreign: Private ordinary functions
Function, cffi-type->gl-type: Public ordinary functions
Function, change-state: Private ordinary functions
Function, check-anisotropy-feature: Private ordinary functions
Function, check-array-sizes-for-copy: Public ordinary functions
Function, check-array-types-for-copy: Public ordinary functions
Function, check-c-array-dimensions: Private ordinary functions
Function, check-framebuffer-status: Public ordinary functions
Function, check-immutable-feature: Private ordinary functions
Function, check-sampler-feature: Private ordinary functions
Function, check-single-element-not-list: Private ordinary functions
Function, check-version-for-per-attachment-params: Private ordinary functions
Function, clear: Public ordinary functions
Function, clear-attachments: Public ordinary functions
Function, clear-color: Public ordinary functions
Function, clear-fbo: Public ordinary functions
Function, clone-c-array: Public ordinary functions
Function, clone-stage-spec: Private ordinary functions
Function, cls: Public ordinary functions
Function, color-attachment-enum: Public ordinary functions
Function, color-attachments: Public ordinary functions
Function, color-mask: Public ordinary functions
Function, color-masks: Public ordinary functions
Function, color-renderable-formatp: Public ordinary functions
Function, compare: Public ordinary functions
Function, compile-context-p: Private ordinary functions
Function, compile-context-primitive: Private ordinary functions
Function, compile-context-stage: Private ordinary functions
Function, compile-context-static-p: Private ordinary functions
Function, compile-context-versions: Private ordinary functions
Function, compile-g: Public ordinary functions
Function, compile-pixel-format: Private ordinary functions
Function, complete-single-stage-pipeline: Private ordinary functions
Function, complete-unbound-context: Private ordinary functions
Function, compute-expander: Private ordinary functions
Function, compute-glsl-version-from-stage-pairs: Private ordinary functions
Function, compute-space-as-uvec3: Public ordinary functions
Function, compute-space-dimensions: Public ordinary functions
Function, compute-space-p: Private ordinary functions
Function, compute-space-size-x: Public ordinary functions
Function, compute-space-size-y: Public ordinary functions
Function, compute-space-size-z: Public ordinary functions
Function, cons-aware-1d-p: Private ordinary functions
Function, consecutive-integers-p: Public ordinary functions
Function, context-id: Public ordinary functions
Function, copy-any-samples-passed-conservative-query: Private ordinary functions
Function, copy-any-samples-passed-query: Private ordinary functions
Function, copy-att: Private ordinary functions
Function, copy-blending-params: Public ordinary functions
Function, copy-boop6: Private ordinary functions
Function, copy-buffer-backed-gpu-array-to-new-c-array: Public ordinary functions
Function, copy-buffer-backed-gpu-array-to-new-lisp-data: Public ordinary functions
Function, copy-buffer-backed-gpu-array-to-texture-backed-gpu-array: Public ordinary functions
Function, copy-buffer-stream: Private ordinary functions
Function, copy-buffer-texture: Private ordinary functions
Function, copy-c-array: Private ordinary functions
Function, copy-c-array-to-buffer-backed-gpu-array: Public ordinary functions
Function, copy-c-array-to-new-lisp-data: Public ordinary functions
Function, copy-c-array-to-ssbo: Private ordinary functions
Function, copy-c-array-to-texture-backed-gpu-array: Public ordinary functions
Function, copy-c-array-to-ubo: Private ordinary functions
Function, copy-cepl-context: Private ordinary functions
Function, copy-compile-context: Private ordinary functions
Function, copy-compute-space: Private ordinary functions
Function, copy-delayed: Private ordinary functions
Function, copy-empty-fbo-params: Private ordinary functions
Function, copy-fbo: Private ordinary functions
Function, copy-glambda-state: Private ordinary functions
Function, copy-gpu-array: Private ordinary functions
Function, copy-gpu-array-bb: Private ordinary functions
Function, copy-gpu-array-t: Private ordinary functions
Function, copy-gpu-buffer: Private ordinary functions
Function, copy-gpu-fence: Private ordinary functions
Function, copy-gpu-query: Private ordinary functions
Function, copy-lisp-array-to-ssbo: Private ordinary functions
Function, copy-lisp-array-to-ubo: Private ordinary functions
Function, copy-lisp-data-to-buffer-backed-gpu-array: Public ordinary functions
Function, copy-lisp-data-to-c-array: Public ordinary functions
Function, copy-lisp-data-to-texture-backed-gpu-array: Public ordinary functions
Function, copy-lisp-list-to-ssbo: Private ordinary functions
Function, copy-lisp-list-to-ubo: Private ordinary functions
Function, copy-pipeline-state: Private ordinary functions
Function, copy-pixel-format: Private ordinary functions
Function, copy-primitives-generated-query: Private ordinary functions
Function, copy-render-buffer: Private ordinary functions
Function, copy-sampler: Private ordinary functions
Function, copy-sampler-id-box: Private ordinary functions
Function, copy-samples-passed-query: Private ordinary functions
Function, copy-scoped-gpu-query: Private ordinary functions
Function, copy-ssbo: Private ordinary functions
Function, copy-ssbo-to-new-c-array: Private ordinary functions
Function, copy-ssbo-to-new-lisp-data: Private ordinary functions
Function, copy-stencil-params: Private ordinary functions
Function, copy-texture: Private ordinary functions
Function, copy-texture-backed-gpu-array-to-buffer-backed-gpu-array: Public ordinary functions
Function, copy-texture-backed-gpu-array-to-c-array: Public ordinary functions
Function, copy-texture-backed-gpu-array-to-new-buffer-backed-gpu-array: Public ordinary functions
Function, copy-texture-backed-gpu-array-to-new-c-array: Public ordinary functions
Function, copy-texture-backed-gpu-array-to-new-lisp-data: Public ordinary functions
Function, copy-time-elapsed-query: Private ordinary functions
Function, copy-timestamp-query: Private ordinary functions
Function, copy-transform-feedback-primitives-written-query: Private ordinary functions
Function, copy-transform-feedback-stream: Private ordinary functions
Function, copy-ubo: Private ordinary functions
Function, copy-ubo-to-new-c-array: Private ordinary functions
Function, copy-ubo-to-new-lisp-data: Private ordinary functions
Function, copy-uidx: Private ordinary functions
Function, copy-unbound-cepl-context: Private ordinary functions
Function, copy-viewport: Public ordinary functions
Function, cube->fbo-arrays: Private ordinary functions
Function, cull-face: Public ordinary functions
Function, current-blend-params: Private ordinary functions
Function, current-stencil-params: Public ordinary functions
Function, current-surface: Public ordinary functions
Function, current-viewport: Public ordinary functions
Function, decode-half-float: Private ordinary functions
Function, def-dispatch-func: Private ordinary functions
Function, default-fbo: Public ordinary functions
Function, default-fbo-attachment-enum: Private ordinary functions
Function, defun-g-common: Private ordinary functions
Function, defx*: Private ordinary functions
Function, delay-initialization: Private ordinary functions
Function, delayed-p: Private ordinary functions
Function, delayed-thunk: Private ordinary functions
Function, delayed-waiting-on: Private ordinary functions
Function, depth-clamp: Public ordinary functions
Function, depth-formatp: Public ordinary functions
Function, depth-mask: Public ordinary functions
Function, depth-range-vec2: Public ordinary functions
Function, depth-stencil-formatp: Public ordinary functions
Function, depth-test-function: Public ordinary functions
Function, describe-image-format: Private ordinary functions
Function, describe-pixel-format: Private ordinary functions
Function, destination-alpha: Public ordinary functions
Function, destination-rgb: Public ordinary functions
Function, destroy-surface: Public ordinary functions
Function, dimensions-at-mipmap-level: Private ordinary functions
Function, discard-context-id: Private ordinary functions
Function, dispatch-dyn-gpu-call: Private ordinary functions
Function, dispatch-make-assigner: Private ordinary functions
Function, double-from-foreign: Public ordinary functions
Function, double-to-foreign: Public ordinary functions
Function, draw-expander: Private ordinary functions
Function, draw-fbo-bound: Public ordinary functions
Function, draw-mode-group-id: Public ordinary functions
Function, draw-mode-symbol-group-id: Private ordinary functions
Function, dyn-code-to-pipeline-and-stages: Private ordinary functions
Function, early-compute-mask: Private ordinary functions
Function, elements-indirect-command-base-instance: Public ordinary functions
Function, elements-indirect-command-base-vertex: Public ordinary functions
Function, elements-indirect-command-count: Public ordinary functions
Function, elements-indirect-command-first-index: Public ordinary functions
Function, elements-indirect-command-instance-count: Public ordinary functions
Function, elements-indirect-command-p: Private ordinary functions
Function, elements-indirect-command-pointer: Private ordinary functions
Function, empty-fbo-args-p: Private ordinary functions
Function, empty-fbo-params: Public ordinary functions
Function, empty-fbo-params-dimensions: Public ordinary functions
Function, empty-fbo-params-fixed-sample-locations-p: Public ordinary functions
Function, empty-fbo-params-layer-count: Public ordinary functions
Function, empty-fbo-params-p: Private ordinary functions
Function, empty-fbo-params-samples: Public ordinary functions
Function, empty-fbo-params-viewport: Public ordinary functions
Function, enable-transform-feedback: Private ordinary functions
Function, encode-half-float: Private ordinary functions
Function, end-scoped-gpu-query: Private ordinary functions
Function, ensure-array-of-ssbo-binding-ranges: Private ordinary functions
Function, ensure-array-of-ssbo-bindings-buffer-ids: Private ordinary functions
Function, ensure-array-of-ubo-binding-ranges: Private ordinary functions
Function, ensure-array-of-ubo-bindings-buffer-ids: Private ordinary functions
Function, ensure-cepl-compatible-setup: Private ordinary functions
Function, ensure-fbo-array-size: Private ordinary functions
Function, ensure-vec-index: Public ordinary functions
Function, error-on-invalid-upload-formats: Private ordinary functions
Function, escape-tildes: Private ordinary functions
Function, establish-texture-type: Private ordinary functions
Function, expand-lambda-defpipeline: Private ordinary functions
Function, expand-mappable-slot-to-layout: Private ordinary functions
Function, expand-slot-to-layout: Private ordinary functions
Function, expand-unmappable-slot-to-layout: Private ordinary functions
Function, extract-dimension-from-make-fbo-pattern: Private ordinary functions
Function, extract-matching-dimension-value: Private ordinary functions
Function, fallback-iuniform-func: Private ordinary functions
Function, fallback-sampler-set: Private ordinary functions
Function, fbo-attach-array: Private ordinary functions
Function, fbo-attach-render-buffer: Private ordinary functions
Function, fbo-bound: Public ordinary functions
Function, fbo-color-arrays: Private ordinary functions
Function, fbo-detach: Private ordinary functions
Function, fbo-empty-p: Public ordinary functions
Function, fbo-gen-attach: Private ordinary functions
Function, fbo-p: Public ordinary functions
Function, file-to-string: Public ordinary functions
Function, filter-hash: Public ordinary functions
Function, find-compatible-c-array-type: Private ordinary functions
Function, find-gpu-func-spec-by-name-and-vals: Private ordinary functions
Function, find-in-tree: Public ordinary functions
Function, find-invalid-defpipeline-options: Private ordinary functions
Function, find-suitable-type: Private ordinary functions
Function, first-elem: Private ordinary functions
Function, flatten: Public ordinary functions
Function, float-from-foreign: Public ordinary functions
Function, float-to-foreign: Public ordinary functions
Function, force-bind-query: Public ordinary functions
Function, force-bind-vao: Private ordinary functions
Function, force-depth-test-function: Private ordinary functions
Function, force-sampler-bound: Private ordinary functions
Function, force-scissor-viewport: Private ordinary functions
Function, force-unbind-query: Public ordinary functions
Function, force-use-program: Private ordinary functions
Function, forget-fbo: Private ordinary functions
Function, forget-gpu-buffer: Private ordinary functions
Function, forget-texture: Private ordinary functions
Function, forgiving-list-dimension-guess: Private ordinary functions
Function, format-array-slot-for-cstruct: Private ordinary functions
Function, format-slot-for-cstruct: Private ordinary functions
Function, format-slot-for-varjo: Private ordinary functions
Function, free-buffer: Public ordinary functions
Function, free-buffer-stream: Public ordinary functions
Function, free-buffers: Public ordinary functions
Function, free-c-array: Public ordinary functions
Function, free-context: Private ordinary functions
Function, free-fbo: Private ordinary functions
Function, free-gpu-array-bb: Private ordinary functions
Function, free-gpu-array-t: Private ordinary functions
Function, free-gpu-buffer: Private ordinary functions
Function, free-gpu-buffers: Private ordinary functions
Function, free-gpu-fence: Public ordinary functions
Function, free-pipeline: Public ordinary functions
Function, free-sampler: Public ordinary functions
Function, free-user-fbo: Private ordinary functions
Function, free-vao: Public ordinary functions
Function, free-vaos: Public ordinary functions
Function, from-active: Private ordinary functions
Function, from-suspended: Private ordinary functions
Function, from-unitialized: Private ordinary functions
Function, front-face: Public ordinary functions
Function, funcall-g: Public ordinary functions
Function, funcs-these-funcs-use: Private ordinary functions
Function, funcs-this-func-uses: Private ordinary functions
Function, function-arg-p: Private ordinary functions
Function, function-formp: Private ordinary functions
Function, function-keyed-pipeline: Private ordinary functions
Function, function-uniforms: Private ordinary functions
Function, fuzzy-args->arrays: Private ordinary functions
Function, g-pc-p: Private ordinary functions
Function, g-pc-pointer: Private ordinary functions
Function, g-pn-p: Private ordinary functions
Function, g-pn-pointer: Private ordinary functions
Function, g-pnb-p: Private ordinary functions
Function, g-pnb-pointer: Private ordinary functions
Function, g-pnc-p: Private ordinary functions
Function, g-pnc-pointer: Private ordinary functions
Function, g-pncb-p: Private ordinary functions
Function, g-pncb-pointer: Private ordinary functions
Function, g-pnt-p: Private ordinary functions
Function, g-pnt-pointer: Private ordinary functions
Function, g-pntb-p: Private ordinary functions
Function, g-pntb-pointer: Private ordinary functions
Function, g-pntc-p: Private ordinary functions
Function, g-pntc-pointer: Private ordinary functions
Function, g-pntcb-p: Private ordinary functions
Function, g-pntcb-pointer: Private ordinary functions
Function, g-pt-p: Private ordinary functions
Function, g-pt-pointer: Private ordinary functions
Function, g-struct-info: Private ordinary functions
Function, gen-buffer: Private ordinary functions
Function, gen-buffer-tex-initial-contents: Private ordinary functions
Function, gen-c-array-sizes: Private ordinary functions
Function, gen-complete-lambda-pipeline-code: Private ordinary functions
Function, gen-depth-stencil-texture: Private ordinary functions
Function, gen-pipeline-init: Private ordinary functions
Function, gen-query-id: Private ordinary functions
Function, gen-recompile-func: Private ordinary functions
Function, gen-texture: Private ordinary functions
Function, gen-update-spec: Private ordinary functions
Function, gen-vertex-stage-code-calling-func: Private ordinary functions
Function, generate-mipmaps: Public ordinary functions
Function, generate-uniform-upload-forms: Private ordinary functions
Function, get-best-glsl-version: Private ordinary functions
Function, get-body-string: Private ordinary functions
Function, get-component-length: Private ordinary functions
Function, get-dyn-return-types-from-stage: Private ordinary functions
Function, get-feedback-out-vars: Private ordinary functions
Function, get-foreign-uniform-function: Private ordinary functions
Function, get-foreign-uniform-function-name: Private ordinary functions
Function, get-free-context-id: Private ordinary functions
Function, get-free-ssbo-id: Private ordinary functions
Function, get-free-ubo-id: Private ordinary functions
Function, get-func-as-stage-code: Private ordinary functions
Function, get-gl-attachment-enum: Private ordinary functions
Function, get-gpu-func-spec-tag: Private ordinary functions
Function, get-possible-designators-for-name: Private ordinary functions
Function, get-sampler-id-box: Private ordinary functions
Function, get-shader-storage-block-index: Private ordinary functions
Function, get-stage-key: Private ordinary functions
Function, get-stage-kind-from-context: Private ordinary functions
Function, get-transform-feedback-primitive: Private ordinary functions
Function, get-uniform-block-index: Private ordinary functions
Function, get-uniform-function: Private ordinary functions
Function, get-uniform-function-name: Private ordinary functions
Function, get-varyings: Private ordinary functions
Function, gl-calc-byte-size: Private ordinary functions
Function, gl-enum: Public ordinary functions
Function, gl-initialized-p: Public ordinary functions
Function, gl-type-size: Public ordinary functions
Function, glambda-state-p: Private ordinary functions
Function, glambda-state-pipeline: Private ordinary functions
Function, glambda-state-recompiler: Private ordinary functions
Function, glambda-state-spec: Private ordinary functions
Function, gpu-array-access-style: Public ordinary functions
Function, gpu-array-bb-access-style: Public ordinary functions
Function, gpu-array-bb-buffer: Public ordinary functions
Function, gpu-array-bb-byte-size: Public ordinary functions
Function, gpu-array-bb-dimensions: Private ordinary functions
Function, gpu-array-bb-element-byte-size: Public ordinary functions
Function, gpu-array-bb-element-pixel-format: Public ordinary functions
Function, gpu-array-bb-element-type: Public ordinary functions
Function, gpu-array-bb-offset-in-bytes-into-buffer: Public ordinary functions
Function, gpu-array-bb-p: Public ordinary functions
Function, gpu-array-bb-row-alignment: Public ordinary functions
Function, gpu-array-buffer: Public ordinary functions
Function, gpu-array-buffer-id: Public ordinary functions
Function, gpu-array-dimensions: Public ordinary functions
Function, gpu-array-element-type: Public ordinary functions
Function, gpu-array-face-num: Public ordinary functions
Function, gpu-array-layer-num: Public ordinary functions
Function, gpu-array-level-num: Public ordinary functions
Function, gpu-array-p: Public ordinary functions
Function, gpu-array-sub-data: Private ordinary functions
Function, gpu-array-t-dimensions: Private ordinary functions
Function, gpu-array-t-face-num: Public ordinary functions
Function, gpu-array-t-image-format: Public ordinary functions
Function, gpu-array-t-layer-num: Public ordinary functions
Function, gpu-array-t-level-num: Public ordinary functions
Function, gpu-array-t-p: Public ordinary functions
Function, gpu-array-t-texture: Public ordinary functions
Function, gpu-array-t-texture-type: Public ordinary functions
Function, gpu-array-texture: Public ordinary functions
Function, gpu-array-texture-type: Public ordinary functions
Function, gpu-buffer-arrays: Public ordinary functions
Function, gpu-buffer-bound: Public ordinary functions
Function, gpu-buffer-cache-id: Public ordinary functions
Function, gpu-buffer-id: Public ordinary functions
Function, gpu-buffer-p: Public ordinary functions
Function, gpu-fence-p: Private ordinary functions
Function, gpu-fence-signalled-p: Public ordinary functions
Function, gpu-func-specs: Private ordinary functions
Function, gpu-functions: Public ordinary functions
Function, gpu-query-cache-id: Public ordinary functions
Function, gpu-query-enum: Public ordinary functions
Function, gpu-query-id: Public ordinary functions
Function, gpu-query-p: Private ordinary functions
Function, gpu-query-result-available-p: Public ordinary functions
Function, group: Public ordinary functions
Function, guess-a-varjo-array-type: Private ordinary functions
Function, guess-a-varjo-bool-type: Private ordinary functions
Function, guess-a-varjo-float-type: Private ordinary functions
Function, guess-a-varjo-integer-type: Private ordinary functions
Function, guess-a-varjo-number-type: Private ordinary functions
Function, guess-a-varjo-type: Private ordinary functions
Function, half-float-from-foreign: Public ordinary functions
Function, half-float-to-foreign: Public ordinary functions
Function, half-vec2-from-foreign: Public ordinary functions
Function, half-vec2-to-foreign: Public ordinary functions
Function, half-vec3-from-foreign: Public ordinary functions
Function, half-vec3-to-foreign: Public ordinary functions
Function, half-vec4-from-foreign: Public ordinary functions
Function, half-vec4-to-foreign: Public ordinary functions
Function, handle-empty-framebuffer: Private ordinary functions
Function, handle-transform-feedback: Private ordinary functions
Function, has-feature: Public ordinary functions
Function, has-func-type-in-args: Private ordinary functions
Function, hash-keys: Public ordinary functions
Function, hash-values: Public ordinary functions
Function, hidden-symb: Public ordinary functions
Function, holds-gl-object-ref-p: Public ordinary functions
Function, host-step: Public ordinary functions
Function, host-swap: Public ordinary functions
Function, image-format->lisp-type: Public ordinary functions
Function, image-format->pixel-format: Public ordinary functions
Function, image-formatp: Public ordinary functions
Function, indexp: Public ordinary functions
Function, init-buffer-stream-from-id: Private ordinary functions
Function, init-buffer-stream-from-shared: Private ordinary functions
Function, init-gl-context: Private ordinary functions
Function, init-gpu-array-from-c-array: Private ordinary functions
Function, init-gpu-array-no-data: Private ordinary functions
Function, init-gpu-arrays-from-c-arrays: Private ordinary functions
Function, init-gpu-buffer-now: Private ordinary functions
Function, init-gpu-buffer-now-with-layouts: Private ordinary functions
Function, init-pending-surfaces: Private ordinary functions
Function, initialize: Public ordinary functions
Function, initialize-all-delay-items-in-context: Private ordinary functions
Function, initialize-all-delayed: Private ordinary functions
Function, initialize-as-empty-fbo: Private ordinary functions
Function, initialize-cepl: Public ordinary functions
Function, initialize-delayed: Private ordinary functions
Function, initialize-regular-fbo: Private ordinary functions
Function, int-from-foreign: Public ordinary functions
Function, int-to-foreign: Public ordinary functions
Function, int32-from-foreign: Public ordinary functions
Function, int32-to-foreign: Public ordinary functions
Function, int8-from-foreign: Public ordinary functions
Function, int8-to-foreign: Public ordinary functions
Function, int8-vec2-from-foreign: Public ordinary functions
Function, int8-vec2-to-foreign: Public ordinary functions
Function, int8-vec3-from-foreign: Public ordinary functions
Function, int8-vec3-to-foreign: Public ordinary functions
Function, int8-vec4-from-foreign: Public ordinary functions
Function, int8-vec4-to-foreign: Public ordinary functions
Function, interactive-delete-gpu-function: Private ordinary functions
Function, interactive-pick-gpu-function: Private ordinary functions
Function, intersperse: Public ordinary functions
Function, ivec2-from-foreign: Public ordinary functions
Function, ivec2-to-foreign: Public ordinary functions
Function, ivec3-from-foreign: Public ordinary functions
Function, ivec3-to-foreign: Public ordinary functions
Function, ivec4-from-foreign: Public ordinary functions
Function, ivec4-to-foreign: Public ordinary functions
Function, just-ignore: Public ordinary functions
Function, keep: Public ordinary functions
Function, kwd: Public ordinary functions
Function, lambda-arg-p: Private ordinary functions
Function, lambda-g->lisp-code: Private ordinary functions
Function, lambda-g->state: Private ordinary functions
Function, lambda-g->varjo-lambda-code: Private ordinary functions
Function, last1: Public ordinary functions
Function, legacy-add-surface: Private ordinary functions
Function, link-shaders: Private ordinary functions
Function, lisp-type->image-format: Public ordinary functions
Function, lispify-name: Public ordinary functions
Function, list-not-consp: Public ordinary functions
Function, list-of-c-arrays-p: Private ordinary functions
Function, listen-to-lifecycle-changes: Public ordinary functions
Function, listify: Public ordinary functions
Function, load-in-release-mode: Public ordinary functions
Function, load-shader: Private ordinary functions
Function, load-shaders: Private ordinary functions
Function, lod-bias: Public ordinary functions
Function, loop-disabling-attachments: Private ordinary functions
Function, loop-enabling-attachments: Private ordinary functions
Function, lowest-suitable-glsl-version: Private ordinary functions
Function, machine-unit-size: Private ordinary functions
Function, magnify-filter: Public ordinary functions
Function, make-any-samples-passed-conservative-query: Public ordinary functions
Function, make-any-samples-passed-query: Public ordinary functions
Function, make-arg-assigners: Private ordinary functions
Function, make-array-assigners: Private ordinary functions
Function, make-array-slot-getter: Private ordinary functions
Function, make-array-slot-setter: Private ordinary functions
Function, make-arrays-indirect-command: Private ordinary functions
Function, make-assigner: Private ordinary functions
Function, make-assigner-let: Private ordinary functions
Function, make-att: Public ordinary functions
Function, make-base-gstruct-wrapper: Private ordinary functions
Function, make-blending-params: Public ordinary functions
Function, make-boop6: Private ordinary functions
Function, make-buffer-stream: Public ordinary functions
Function, make-buffer-stream-from-id: Private ordinary functions
Function, make-buffer-stream-from-id-and-layouts: Public ordinary functions
Function, make-buffer-stream-sharing: Public ordinary functions
Function, make-c-array: Public ordinary functions
Function, make-c-array-from-pointer: Public ordinary functions
Function, make-compile-context: Private ordinary functions
Function, make-complete-lambda-pipeline: Private ordinary functions
Function, make-compute-space: Public ordinary functions
Function, make-context: Public ordinary functions
Function, make-context-internals: Private ordinary functions
Function, make-context-shared-with-current-context: Public ordinary functions
Function, make-default-sampler-id-box: Private ordinary functions
Function, make-delayed: Private ordinary functions
Function, make-draw-command-c-array: Public ordinary functions
Function, make-draw-command-gpu-array: Public ordinary functions
Function, make-elements-indirect-command: Private ordinary functions
Function, make-empty-fbo-params: Public ordinary functions
Function, make-eprim-slot-setter: Private ordinary functions
Function, make-existing-fbo-empty: Private ordinary functions
Function, make-fbo: Public ordinary functions
Function, make-fbo-non-empty: Private ordinary functions
Function, make-fbo-now: Private ordinary functions
Function, make-g-pc: Public ordinary functions
Function, make-g-pn: Public ordinary functions
Function, make-g-pnb: Public ordinary functions
Function, make-g-pnc: Public ordinary functions
Function, make-g-pncb: Public ordinary functions
Function, make-g-pnt: Public ordinary functions
Function, make-g-pntb: Public ordinary functions
Function, make-g-pntc: Public ordinary functions
Function, make-g-pntcb: Public ordinary functions
Function, make-g-pt: Public ordinary functions
Function, make-gl-context: Public ordinary functions
Function, make-gl-context-current-on-surface: Public ordinary functions
Function, make-gl-context-shared-with-current-context: Public ordinary functions
Function, make-glambda-state: Private ordinary functions
Function, make-gpu-array-from-buffer: Public ordinary functions
Function, make-gpu-array-from-buffer-id: Public ordinary functions
Function, make-gpu-array-share-data: Private ordinary functions
Function, make-gpu-arrays: Public ordinary functions
Function, make-gpu-arrays-from-buffer: Public ordinary functions
Function, make-gpu-arrays-from-buffer-id: Public ordinary functions
Function, make-gpu-buffer: Public ordinary functions
Function, make-gpu-buffer-from-id: Public ordinary functions
Function, make-gpu-fence: Public ordinary functions
Function, make-gpu-lambda: Private ordinary functions
Function, make-gpu-query: Private ordinary functions
Function, make-instance-wrapper-def: Private ordinary functions
Function, make-keyword: Public ordinary functions
Function, make-lambda-pipeline: Private ordinary functions
Function, make-lambda-pipeline-inner: Private ordinary functions
Function, make-lambda-pipeline-spec: Private ordinary functions
Function, make-make-struct: Private ordinary functions
Function, make-partial-lambda-pipeline: Private ordinary functions
Function, make-pipeline-spec: Private ordinary functions
Function, make-pipeline-state: Private ordinary functions
Function, make-pixel-format: Public ordinary functions
Function, make-populate: Private ordinary functions
Function, make-primitives-generated-query: Public ordinary functions
Function, make-project: Public ordinary functions
Function, make-pull-push: Private ordinary functions
Function, make-raw-buffer-stream: Public ordinary functions
Function, make-render-buffer: Public ordinary functions
Function, make-render-buffer-now: Private ordinary functions
Function, make-sampler-assigner: Private ordinary functions
Function, make-sampler-id-box: Public ordinary functions
Function, make-sampler-now: Private ordinary functions
Function, make-samples-passed-query: Public ordinary functions
Function, make-scoped-gpu-query: Private ordinary functions
Function, make-shader: Private ordinary functions
Function, make-simple-assigner: Private ordinary functions
Function, make-slot-getter: Private ordinary functions
Function, make-slot-setter: Private ordinary functions
Function, make-ssbo: Public ordinary functions
Function, make-ssbo-assigner: Private ordinary functions
Function, make-ssbo-from-array: Public ordinary functions
Function, make-ssbo-from-buffer: Private ordinary functions
Function, make-stand-in-lisp-func: Private ordinary functions
Function, make-stencil-params: Public ordinary functions
Function, make-struct-assigners: Private ordinary functions
Function, make-struct-attrib-assigner: Private ordinary functions
Function, make-struct-pixel-format: Private ordinary functions
Function, make-surface: Public ordinary functions
Function, make-surface-current: Public ordinary functions
Function, make-surface-from-pending: Private ordinary functions
Function, make-t-slot-getter: Private ordinary functions
Function, make-t-slot-setter: Private ordinary functions
Function, make-texture: Public ordinary functions
Function, make-texture-from-id: Public ordinary functions
Function, make-texture-now: Private ordinary functions
Function, make-time-elapsed-query: Public ordinary functions
Function, make-timestamp-query: Public ordinary functions
Function, make-transform-feedback-primitives-written-query: Public ordinary functions
Function, make-transform-feedback-stream: Public ordinary functions
Function, make-ubo: Public ordinary functions
Function, make-ubo-assigner: Private ordinary functions
Function, make-ubo-from-array: Public ordinary functions
Function, make-ubo-from-buffer: Private ordinary functions
Function, make-uidx: Private ordinary functions
Function, make-unbound-cepl-context: Private ordinary functions
Function, make-uninitialized-buffer-stream: Public ordinary functions
Function, make-uninitialized-fbo: Public ordinary functions
Function, make-uninitialized-gpu-array-bb: Public ordinary functions
Function, make-uninitialized-gpu-array-t: Public ordinary functions
Function, make-uninitialized-gpu-buffer: Public ordinary functions
Function, make-uninitialized-render-buffer: Public ordinary functions
Function, make-uninitialized-sampler: Public ordinary functions
Function, make-uninitialized-texture: Public ordinary functions
Function, make-vao: Public ordinary functions
Function, make-vao-from-id: Public ordinary functions
Function, make-varjo-struct-def: Private ordinary functions
Function, make-varjo-struct-lookup: Private ordinary functions
Function, make-viewport: Public ordinary functions
Function, map-c: Public ordinary functions
Function, map-c-into: Public ordinary functions
Function, mapcat: Public ordinary functions
Function, mapg-context-p: Private ordinary functions
Function, massage-compute-stage-name: Private ordinary functions
Function, mat2-from-foreign: Public ordinary functions
Function, mat2-to-foreign: Public ordinary functions
Function, mat2x2-from-foreign: Public ordinary functions
Function, mat2x2-to-foreign: Public ordinary functions
Function, mat2x3-from-foreign: Public ordinary functions
Function, mat2x3-to-foreign: Public ordinary functions
Function, mat2x4-from-foreign: Public ordinary functions
Function, mat2x4-to-foreign: Public ordinary functions
Function, mat3-from-foreign: Public ordinary functions
Function, mat3-to-foreign: Public ordinary functions
Function, mat3x2-from-foreign: Public ordinary functions
Function, mat3x2-to-foreign: Public ordinary functions
Function, mat3x3-from-foreign: Public ordinary functions
Function, mat3x3-to-foreign: Public ordinary functions
Function, mat3x4-from-foreign: Public ordinary functions
Function, mat3x4-to-foreign: Public ordinary functions
Function, mat4-from-foreign: Public ordinary functions
Function, mat4-to-foreign: Public ordinary functions
Function, mat4x2-from-foreign: Public ordinary functions
Function, mat4x2-to-foreign: Public ordinary functions
Function, mat4x3-from-foreign: Public ordinary functions
Function, mat4x3-to-foreign: Public ordinary functions
Function, mat4x4-from-foreign: Public ordinary functions
Function, mat4x4-to-foreign: Public ordinary functions
Function, max-lod: Public ordinary functions
Function, merge-into-assigner: Private ordinary functions
Function, min-lod: Public ordinary functions
Function, minify-filter: Public ordinary functions
Function, mkstr: Public ordinary functions
Function, mode-alpha: Public ordinary functions
Function, mode-rgb: Public ordinary functions
Function, multi-buffer-data: Public ordinary functions
Function, multisample-texture-p: Private ordinary functions
Function, n-of: Public ordinary functions
Function, nest-simple-loops: Private ordinary functions
Function, never: Public ordinary functions
Function, new-func-key: Private ordinary functions
Function, ni-call: Public ordinary functions
Function, ni-val: Public ordinary functions
Function, normalize-slot-description: Private ordinary functions
Function, note-change: Private ordinary functions
Function, null-func-spec: Private ordinary functions
Function, one: Public ordinary functions
Function, pack-alignment: Public ordinary functions
Function, pack-pixels-from-texture: Private ordinary functions
Function, pairs-key-to-stage: Private ordinary functions
Function, parse-body+: Public ordinary functions
Function, parse-compile-context: Private ordinary functions
Function, parse-defn-args: Private ordinary functions
Function, parse-gpipe-args: Private ordinary functions
Function, parse-gpipe-args-explicit: Private ordinary functions
Function, parse-gpipe-args-implicit: Private ordinary functions
Function, parsed-gpipe-args->v-translate-args: Private ordinary functions
Function, patch-uninitialized-context-with-version: Private ordinary functions
Function, per-attachment-blending-available-p: Public ordinary functions
Function, pipeline-spec: Private ordinary functions
Function, pipeline-state-diff-tag: Private ordinary functions
Function, pipeline-state-enable-rasterizer: Private ordinary functions
Function, pipeline-state-implicit-uniform-upload-func: Private ordinary functions
Function, pipeline-state-p: Private ordinary functions
Function, pipeline-state-prog-ids: Private ordinary functions
Function, pipeline-state-tfs-array-count: Private ordinary functions
Function, pipeline-state-tfs-primitive: Private ordinary functions
Function, pipeline-state-uniform-int-ids: Private ordinary functions
Function, pipeline-state-uniform-uint-ids: Private ordinary functions
Function, pixel-format!: Private ordinary functions
Function, pixel-format->image-format: Public ordinary functions
Function, pixel-format->lisp-type: Public ordinary functions
Function, pixel-format-comp-length: Public ordinary functions
Function, pixel-format-components: Public ordinary functions
Function, pixel-format-normalize: Public ordinary functions
Function, pixel-format-p: Public ordinary functions
Function, pixel-format-reversed: Public ordinary functions
Function, pixel-format-sizes: Public ordinary functions
Function, pixel-format-type: Public ordinary functions
Function, po2p: Private ordinary functions
Function, populate-arrays-indirect-command: Private ordinary functions
Function, populate-elements-indirect-command: Private ordinary functions
Function, populate-g-pc: Private ordinary functions
Function, populate-g-pn: Private ordinary functions
Function, populate-g-pnb: Private ordinary functions
Function, populate-g-pnc: Private ordinary functions
Function, populate-g-pncb: Private ordinary functions
Function, populate-g-pnt: Private ordinary functions
Function, populate-g-pntb: Private ordinary functions
Function, populate-g-pntc: Private ordinary functions
Function, populate-g-pntcb: Private ordinary functions
Function, populate-g-pt: Private ordinary functions
Function, post-gl-init: Private ordinary functions
Function, potential-struct-layout: Private ordinary functions
Function, pre-gl-init: Private ordinary functions
Function, preprocess-gpu-arrays-for-vao: Private ordinary functions
Function, primary-context: Private ordinary functions
Function, primary-thread: Private ordinary functions
Function, primitive-keyword-to-enum-val: Private ordinary functions
Function, primitive-vert-length: Private ordinary functions
Function, primitives-generated-query-active-p: Private ordinary functions
Function, primitives-generated-query-cache-id: Private ordinary functions
Function, primitives-generated-query-enum: Private ordinary functions
Function, primitives-generated-query-id: Private ordinary functions
Function, primitives-generated-query-p: Private ordinary functions
Function, process-defn-declares: Private ordinary functions
Function, process-fbo-init-pattern: Private ordinary functions
Function, process-glsl-arg: Private ordinary functions
Function, process-layout: Private ordinary functions
Function, process-layout: Private ordinary functions
Function, process-layout-specifier: Private ordinary functions
Function, process-mp-path: Private ordinary functions
Function, process-pixel-format: Private ordinary functions
Function, process-stream-layout: Private ordinary functions
Function, program-attrib-count: Private ordinary functions
Function, program-attributes: Private ordinary functions
Function, program-uniform-count: Private ordinary functions
Function, program-uniforms: Private ordinary functions
Function, ptr-index: Public ordinary functions
Function, ptr-index-1d: Private ordinary functions
Function, ptr-index-2d: Private ordinary functions
Function, ptr-index-3d: Private ordinary functions
Function, ptr-index-4d: Private ordinary functions
Function, pull-all-gpu-commands-issued-time: Public ordinary functions
Function, pull-g-soft-multi-func-message: Private ordinary functions
Function, pull-gpu-query-result: Public ordinary functions
Function, push-gpu-query-result-to-gpu-array: Public ordinary functions
Function, query-all-gpu-commands-completed-time: Public ordinary functions
Function, quit: Public ordinary functions
Function, range: Public ordinary functions
Function, rangei: Public ordinary functions
Function, read-fbo-bound: Public ordinary functions
Function, read-gpu-function-choice: Private ordinary functions
Function, read-integers: Public ordinary functions
Function, reallocate-buffer: Public ordinary functions
Function, reallocate-gpu-array: Public ordinary functions
Function, recompile-name: Private ordinary functions
Function, register-event-listener: Public ordinary functions
Function, register-event-listener: Private ordinary functions
Function, register-fbo: Private ordinary functions
Function, register-gpu-buffer: Private ordinary functions
Function, register-host: Public ordinary functions
Function, register-lambda-pipeline: Private ordinary functions
Function, register-named-pipeline: Private ordinary functions
Function, register-texture: Private ordinary functions
Function, reinit-on-context: Private ordinary functions
Function, remove-surface: Public ordinary functions
Function, render-buffer-dimensions: Public ordinary functions
Function, render-buffer-element-type: Private ordinary functions
Function, render-buffer-image-format: Public ordinary functions
Function, render-buffer-multisample-p: Public ordinary functions
Function, render-buffer-p: Public ordinary functions
Function, render-buffer-resolution: Public ordinary functions
Function, repl: Public ordinary functions
Function, replace-host: Private ordinary functions
Function, replace-nth: Public ordinary functions
Function, request-program-id-for: Private ordinary functions
Function, restore-array-of-bound-gpu-buffers: Private ordinary functions
Function, restore-array-of-bound-samplers: Private ordinary functions
Function, restore-array-of-ssbo-bindings-buffer-ids: Private ordinary functions
Function, restore-array-of-ubo-bindings-buffer-ids: Private ordinary functions
Function, restore-clear-color: Private ordinary functions
Function, restore-color-masks: Private ordinary functions
Function, restore-cull-face: Private ordinary functions
Function, restore-current-scissor-viewports: Private ordinary functions
Function, restore-depth-clamp: Private ordinary functions
Function, restore-depth-mask: Private ordinary functions
Function, restore-depth-range: Private ordinary functions
Function, restore-depth-test-function: Private ordinary functions
Function, restore-fbo-bindings: Private ordinary functions
Function, restore-front-face: Private ordinary functions
Function, restore-pack-alignment: Private ordinary functions
Function, restore-program: Private ordinary functions
Function, restore-stencil: Private ordinary functions
Function, restore-unpack-alignment: Private ordinary functions
Function, restore-vao: Private ordinary functions
Function, restore-viewport: Private ordinary functions
Function, rm-index-to-coords: Private ordinary functions
Function, round-to-next-multiple: Private ordinary functions
Function, row-major-aref-c: Public ordinary functions
Function, runtime-restore-block-checks: Private ordinary functions
Function, sample: Public ordinary functions
Function, sampler-id-box-id: Public ordinary functions
Function, sampler-id-box-p: Private ordinary functions
Function, sampler-id-box-shared-p: Public ordinary functions
Function, sampler-on-context: Private ordinary functions
Function, sampler-p: Public ordinary functions
Function, sampler-shared-p: Public ordinary functions
Function, sampler-texture: Public ordinary functions
Function, sampler-type: Public ordinary functions
Function, sampler-typep: Private ordinary functions
Function, samples-passed-query-active-p: Private ordinary functions
Function, samples-passed-query-cache-id: Private ordinary functions
Function, samples-passed-query-enum: Private ordinary functions
Function, samples-passed-query-id: Private ordinary functions
Function, samples-passed-query-p: Private ordinary functions
Function, scalar-type-p: Private ordinary functions
Function, scan-array-for-type: Private ordinary functions
Function, scan-for-type: Private ordinary functions
Function, scan-list-for-type: Private ordinary functions
Function, scissor-viewport: Public ordinary functions
Function, scoped-gpu-query-active-p: Public ordinary functions
Function, scoped-gpu-query-cache-id: Private ordinary functions
Function, scoped-gpu-query-enum: Private ordinary functions
Function, scoped-gpu-query-id: Private ordinary functions
Function, scoped-gpu-query-p: Private ordinary functions
Function, serialize-stage-pairs: Private ordinary functions
Function, set-buffer-bound-static: Private ordinary functions
Function, set-context-defaults: Private ordinary functions
Function, set-current-blend-params: Private ordinary functions
Function, set-current-blend-params-from-fbo: Private ordinary functions
Function, set-default-swap-arg: Public ordinary functions
Function, set-draw-command: Public ordinary functions
Function, set-make-gl-context-current-on-surface: Public ordinary functions
Function, set-minify-filter: Public ordinary functions
Function, set-patch-stream-primitive: Private ordinary functions
Function, set-register-event-callback-func: Public ordinary functions
Function, set-sampler-bound: Private ordinary functions
Function, set-step-func: Public ordinary functions
Function, set-surface-fullscreen: Public ordinary functions
Function, set-surface-size: Public ordinary functions
Function, set-surface-title: Public ordinary functions
Function, set-swap-func: Public ordinary functions
Function, set-window-size-func: Public ordinary functions
Function, shader-type-from-path: Private ordinary functions
Function, short-from-foreign: Public ordinary functions
Function, short-to-foreign: Public ordinary functions
Function, shutting-down-p: Public ordinary functions
Function, slow-query-mipmap-count: Private ordinary functions
Function, sn-equal: Public ordinary functions
Function, source-alpha: Public ordinary functions
Function, source-rgb: Public ordinary functions
Function, spec-changed-p: Private ordinary functions
Function, split-args-for-dyn-call: Private ordinary functions
Function, split-float-version: Public ordinary functions
Function, split-seq-by-seq: Public ordinary functions
Function, split-string: Public ordinary functions
Function, ssbo-bind-buffer-id-range: Private ordinary functions
Function, ssbo-data: Public ordinary functions
Function, ssbo-data-type: Public ordinary functions
Function, ssbo-id: Public ordinary functions
Function, ssbo-index: Public ordinary functions
Function, ssbo-owns-gpu-array: Public ordinary functions
Function, ssbo-p: Public ordinary functions
Function, stage-formp: Private ordinary functions
Function, stages-require-partial-pipeline: Private ordinary functions
Function, stateless-quad-geometry-stage: Private ordinary functions
Function, stateless-quad-vertex-stage: Private ordinary functions
Function, stencil-decf: Public ordinary functions
Function, stencil-decf-wrap: Public ordinary functions
Function, stencil-formatp: Public ordinary functions
Function, stencil-incf: Public ordinary functions
Function, stencil-incf-wrap: Public ordinary functions
Function, stencil-invert: Public ordinary functions
Function, stencil-mask: Public ordinary functions
Function, stencil-operation-enum-to-func: Private ordinary functions
Function, stencil-operation-to-enum: Private ordinary functions
Function, stencil-params-mask: Public ordinary functions
Function, stencil-params-on-dpfail: Public ordinary functions
Function, stencil-params-on-dppass: Public ordinary functions
Function, stencil-params-on-sfail: Public ordinary functions
Function, stencil-params-on-stencil-pass-depth-test-fail: Public ordinary functions
Function, stencil-params-on-stencil-pass-depth-test-pass: Public ordinary functions
Function, stencil-params-on-stencil-test-fail: Public ordinary functions
Function, stencil-params-p: Private ordinary functions
Function, stencil-params-test: Public ordinary functions
Function, stencil-params-value: Public ordinary functions
Function, stencil-replace: Public ordinary functions
Function, stencil-test-enum-to-func: Private ordinary functions
Function, stencil-test-to-enum: Private ordinary functions
Function, step-host: Public ordinary functions
Function, stop-listening-to-lifecycle-changes: Public ordinary functions
Function, sub-at-index: Public ordinary functions
Function, subseq-c: Public ordinary functions
Function, subseq-g: Public ordinary functions
Function, subseq-g-raw: Public ordinary functions
Function, suitable-array-for-index-p: Private ordinary functions
Function, supports-multiple-contexts-p: Public ordinary functions
Function, supports-multiple-surfaces-p: Public ordinary functions
Function, surface-dimensions: Public ordinary functions
Function, surface-dimensions: Private ordinary functions
Function, surface-fullscreen-p: Public ordinary functions
Function, surface-fullscreen-p: Public ordinary functions
Function, surface-resolution: Public ordinary functions
Function, surface-resolution: Private ordinary functions
Function, surface-title: Public ordinary functions
Function, surface-title: Public ordinary functions
Function, surfaces: Public ordinary functions
Function, suspended-p: Private ordinary functions
Function, swap: Public ordinary functions
Function, swap-versions: Private ordinary functions
Function, symb: Public ordinary functions
Function, symb-name=: Public ordinary functions
Function, symb-package: Public ordinary functions
Function, symbol-name-equal: Public ordinary functions
Function, tex-kind->cache-index: Private ordinary functions
Function, tex-storage-1d: Private ordinary functions
Function, tex-storage-2d: Private ordinary functions
Function, tex-storage-2d-multisample: Private ordinary functions
Function, tex-storage-3d: Private ordinary functions
Function, tex-storage-3d-multisample: Private ordinary functions
Function, texref: Public ordinary functions
Function, texture-allocated-p: Public ordinary functions
Function, texture-base-dimensions: Public ordinary functions
Function, texture-cache-id: Public ordinary functions
Function, texture-cubes-p: Public ordinary functions
Function, texture-element-type: Public ordinary functions
Function, texture-fixed-sample-locations-p: Public ordinary functions
Function, texture-id: Public ordinary functions
Function, texture-image-format: Public ordinary functions
Function, texture-last-sampler-id: Public ordinary functions
Function, texture-layer-count: Public ordinary functions
Function, texture-mipmap-levels: Public ordinary functions
Function, texture-mutable-p: Public ordinary functions
Function, texture-p: Public ordinary functions
Function, texture-samples: Public ordinary functions
Function, texture-type: Public ordinary functions
Function, throw-missing-col-attrs: Private ordinary functions
Function, time-elapsed-query-active-p: Private ordinary functions
Function, time-elapsed-query-cache-id: Private ordinary functions
Function, time-elapsed-query-enum: Private ordinary functions
Function, time-elapsed-query-id: Private ordinary functions
Function, time-elapsed-query-p: Private ordinary functions
Function, timestamp-query-cache-id: Private ordinary functions
Function, timestamp-query-enum: Private ordinary functions
Function, timestamp-query-id: Private ordinary functions
Function, timestamp-query-p: Private ordinary functions
Function, to-active: Private ordinary functions
Function, to-cepl-type-spec: Private ordinary functions
Function, to-shutting-down: Private ordinary functions
Function, to-suspended: Private ordinary functions
Function, transform-feedback-bind-buffer-id-range: Private ordinary functions
Function, transform-feedback-primitives-written-query-active-p: Private ordinary functions
Function, transform-feedback-primitives-written-query-cache-id: Private ordinary functions
Function, transform-feedback-primitives-written-query-enum: Private ordinary functions
Function, transform-feedback-primitives-written-query-id: Private ordinary functions
Function, transform-feedback-primitives-written-query-p: Private ordinary functions
Function, transform-feedback-stream-arrays: Public ordinary functions
Function, transform-feedback-stream-p: Private ordinary functions
Function, try-guessing-a-varjo-type-for-symbol: Private ordinary functions
Function, try-injecting-a-constant: Private ordinary functions
Function, type-contains-structs: Private ordinary functions
Function, typed-defp: Private ordinary functions
Function, ubo-bind-buffer-id-range: Private ordinary functions
Function, ubo-data: Public ordinary functions
Function, ubo-data-type: Public ordinary functions
Function, ubo-id: Public ordinary functions
Function, ubo-index: Public ordinary functions
Function, ubo-owns-gpu-array: Public ordinary functions
Function, ubo-p: Public ordinary functions
Function, uidx-int: Private ordinary functions
Function, uidx-p: Private ordinary functions
Function, uidx-uint: Private ordinary functions
Function, uint-from-foreign: Public ordinary functions
Function, uint-to-foreign: Public ordinary functions
Function, uint32-from-foreign: Public ordinary functions
Function, uint32-to-foreign: Public ordinary functions
Function, uint8-from-foreign: Public ordinary functions
Function, uint8-to-foreign: Public ordinary functions
Function, uint8-vec2-from-foreign: Public ordinary functions
Function, uint8-vec2-to-foreign: Public ordinary functions
Function, uint8-vec3-from-foreign: Public ordinary functions
Function, uint8-vec3-to-foreign: Public ordinary functions
Function, uint8-vec4-from-foreign: Public ordinary functions
Function, uint8-vec4-to-foreign: Public ordinary functions
Function, unbind-texture-from-scratch: Private ordinary functions
Function, unbound-cepl-context-consumed: Private ordinary functions
Function, unbound-cepl-context-gl-context: Private ordinary functions
Function, unbound-cepl-context-p: Private ordinary functions
Function, unbound-cepl-context-requested-gl-version: Private ordinary functions
Function, unbound-cepl-context-shared: Private ordinary functions
Function, unbound-cepl-context-surface: Private ordinary functions
Function, unbound-cepl-context-surfaces: Private ordinary functions
Function, uniform-1b: Private ordinary functions
Function, uniform-1f: Private ordinary functions
Function, uniform-1i: Private ordinary functions
Function, uniform-2f: Private ordinary functions
Function, uniform-2i: Private ordinary functions
Function, uniform-3f: Private ordinary functions
Function, uniform-3i: Private ordinary functions
Function, uniform-4f: Private ordinary functions
Function, uniform-4i: Private ordinary functions
Function, uniform-matrix-2ft: Private ordinary functions
Function, uniform-matrix-2fvt: Private ordinary functions
Function, uniform-matrix-3ft: Private ordinary functions
Function, uniform-matrix-3fvt: Private ordinary functions
Function, uniform-matrix-4ft: Private ordinary functions
Function, uniform-matrix-4fvt: Private ordinary functions
Function, uniform-sampler: Private ordinary functions
Function, uninitialized-p: Public ordinary functions
Function, unknown-gl-id-p: Public ordinary functions
Function, unpack-alignment: Public ordinary functions
Function, update-clear-mask: Private ordinary functions
Function, update-data: Private ordinary functions
Function, update-draw-buffer-map: Private ordinary functions
Function, update-pipeline-spec: Private ordinary functions
Function, update-specs-with-missing-dependencies: Private ordinary functions
Function, upload-c-array-to-gpu-array-t: Private ordinary functions
Function, upload-gpu-array-bb-to-gpu-array-t: Private ordinary functions
Function, use-program: Private ordinary functions
Function, ushort-from-foreign: Public ordinary functions
Function, ushort-to-foreign: Public ordinary functions
Function, uvec2-from-foreign: Public ordinary functions
Function, uvec2-to-foreign: Public ordinary functions
Function, uvec3-from-foreign: Public ordinary functions
Function, uvec3-to-foreign: Public ordinary functions
Function, uvec4-from-foreign: Public ordinary functions
Function, uvec4-to-foreign: Public ordinary functions
Function, valid-image-format-for-buffer-backed-texturep: Public ordinary functions
Function, valid-index-p: Private ordinary functions
Function, valid-pixel-format-p: Private ordinary functions
Function, validate-defstruct-g-form: Private ordinary functions
Function, validate-dimensions: Private ordinary functions
Function, validate-pixel-format: Private ordinary functions
Function, validate-stage-names: Private ordinary functions
Function, validate-varjo-type-spec: Private ordinary functions
Function, vao-bound: Public ordinary functions
Function, varjo->gl-stage-names: Private ordinary functions
Function, vec2-from-foreign: Public ordinary functions
Function, vec2-to-foreign: Public ordinary functions
Function, vec3-from-foreign: Public ordinary functions
Function, vec3-to-foreign: Public ordinary functions
Function, vec4-from-foreign: Public ordinary functions
Function, vec4-to-foreign: Public ordinary functions
Function, viewport-dimensions: Public ordinary functions
Function, viewport-eql: Public ordinary functions
Function, viewport-for-array: Private ordinary functions
Function, viewport-origin: Public ordinary functions
Function, viewport-origin-i: Public ordinary functions
Function, viewport-origin-x: Public ordinary functions
Function, viewport-origin-y: Public ordinary functions
Function, viewport-p: Public ordinary functions
Function, viewport-params-to-vec4: Public ordinary functions
Function, viewport-resolution: Public ordinary functions
Function, viewport-resolution-x: Public ordinary functions
Function, viewport-resolution-y: Public ordinary functions
Function, vs-spliced-values: Private ordinary functions
Function, wait-on-gpu-fence: Public ordinary functions
Function, walk-replace: Public ordinary functions
Function, window-dimensions: Public ordinary functions
Function, window-resolution: Public ordinary functions
Function, window-size: Public ordinary functions
Function, with-setf-internals: Private ordinary functions
Function, wrap: Public ordinary functions
Function, wrap-allowing-recompilation: Private ordinary functions
Function, wrap-eq: Private ordinary functions
Function, xsymbolp: Private ordinary functions
Function, zero: Public ordinary functions
function-arg-p: Private ordinary functions
function-formp: Private ordinary functions
function-keyed-pipeline: Private ordinary functions
function-uniforms: Private ordinary functions
fuzzy-args->arrays: Private ordinary functions

G
g-pc-p: Private ordinary functions
g-pc-pointer: Private ordinary functions
g-pn-p: Private ordinary functions
g-pn-pointer: Private ordinary functions
g-pnb-p: Private ordinary functions
g-pnb-pointer: Private ordinary functions
g-pnc-p: Private ordinary functions
g-pnc-pointer: Private ordinary functions
g-pncb-p: Private ordinary functions
g-pncb-pointer: Private ordinary functions
g-pnt-p: Private ordinary functions
g-pnt-pointer: Private ordinary functions
g-pntb-p: Private ordinary functions
g-pntb-pointer: Private ordinary functions
g-pntc-p: Private ordinary functions
g-pntc-pointer: Private ordinary functions
g-pntcb-p: Private ordinary functions
g-pntcb-pointer: Private ordinary functions
g-pt-p: Private ordinary functions
g-pt-pointer: Private ordinary functions
g-struct-info: Private ordinary functions
gen-buffer: Private ordinary functions
gen-buffer-tex-initial-contents: Private ordinary functions
gen-c-array-sizes: Private ordinary functions
gen-cleanup-block: Private generic functions
gen-cleanup-block: Private generic functions
gen-complete-lambda-pipeline-code: Private ordinary functions
gen-depth-stencil-texture: Private ordinary functions
gen-pipeline-init: Private ordinary functions
gen-query-id: Private ordinary functions
gen-recompile-func: Private ordinary functions
gen-texture: Private ordinary functions
gen-update-spec: Private ordinary functions
gen-uploaders-block: Private generic functions
gen-uploaders-block: Private generic functions
gen-vertex-stage-code-calling-func: Private ordinary functions
generate-mipmaps: Public ordinary functions
generate-uniform-upload-forms: Private ordinary functions
Generic Function, %destroy-surface: Private generic functions
Generic Function, %funcs-this-func-uses: Private generic functions
Generic Function, %gpu-function: Private generic functions
Generic Function, %init: Private generic functions
Generic Function, %make-gl-context: Private generic functions
Generic Function, %make-gl-context-shared-with-current-context: Private generic functions
Generic Function, %make-surface: Private generic functions
Generic Function, %recompile-gpu-function-and-pipelines: Private generic functions
Generic Function, %set-surface-fullscreen: Private generic functions
Generic Function, %set-surface-size: Private generic functions
Generic Function, %set-surface-title: Private generic functions
Generic Function, %shutdown: Private generic functions
Generic Function, %subscribe-to-gpu-func: Private generic functions
Generic Function, %supports-multiple-contexts-p: Private generic functions
Generic Function, %supports-multiple-surfaces-p: Private generic functions
Generic Function, %surface-fullscreen-p: Private generic functions
Generic Function, %surface-title: Private generic functions
Generic Function, %unsubscibe-from-all: Private generic functions
Generic Function, (setf always-uploadp): Private generic functions
Generic Function, (setf arg-name): Private generic functions
Generic Function, (setf assigner-body): Private generic functions
Generic Function, (setf assigner-index): Private generic functions
Generic Function, (setf assigner-name): Private generic functions
Generic Function, (setf assigner-type): Private generic functions
Generic Function, (setf bi-tangent): Public generic functions
Generic Function, (setf cleanup): Private generic functions
Generic Function, (setf col): Public generic functions
Generic Function, (setf dimensions): Public generic functions
Generic Function, (setf funcs-that-use-this-func): Private generic functions
Generic Function, (setf gpu-func-spec): Private generic functions
Generic Function, (setf let-forms): Private generic functions
Generic Function, (setf local-arg-name): Private generic functions
Generic Function, (setf norm): Public generic functions
Generic Function, (setf origin): Public generic functions
Generic Function, (setf pointer-arg): Private generic functions
Generic Function, (setf pos): Public generic functions
Generic Function, (setf resolution): Public generic functions
Generic Function, (setf tangent): Public generic functions
Generic Function, (setf tex): Public generic functions
Generic Function, (setf uploaders): Private generic functions
Generic Function, (setf viewport): Public generic functions
Generic Function, always-uploadp: Private generic functions
Generic Function, arg-name: Private generic functions
Generic Function, assigner-body: Private generic functions
Generic Function, assigner-index: Private generic functions
Generic Function, assigner-name: Private generic functions
Generic Function, assigner-type: Private generic functions
Generic Function, bi-tangent: Public generic functions
Generic Function, can-be-shared-between-contexts-p: Public generic functions
Generic Function, check-host: Private generic functions
Generic Function, check-mipmap-level-count-valid: Private generic functions
Generic Function, cleanup: Private generic functions
Generic Function, clear-gl-context-cache: Public generic functions
Generic Function, col: Public generic functions
Generic Function, copy-g: Public generic functions
Generic Function, delete-func-spec: Private generic functions
Generic Function, delete-gpu-function: Public generic functions
Generic Function, dimensions: Public generic functions
Generic Function, draw-buffer-i: Private generic functions
Generic Function, element-byte-size: Public generic functions
Generic Function, element-type: Public generic functions
Generic Function, free: Public generic functions
Generic Function, free-gpu-array: Public generic functions
Generic Function, free-texture: Public generic functions
Generic Function, func-key: Private generic functions
Generic Function, func-key->name: Private generic functions
Generic Function, func-key=: Private generic functions
Generic Function, funcs-that-use-this-func: Private generic functions
Generic Function, gen-cleanup-block: Private generic functions
Generic Function, gen-uploaders-block: Private generic functions
Generic Function, get-typed-from-foreign: Public generic functions
Generic Function, get-typed-to-foreign: Public generic functions
Generic Function, gl-assign-attrib-pointers: Public generic functions
Generic Function, gpu-func-spec: Private generic functions
Generic Function, handle: Private generic functions
Generic Function, handle-defn-declaration: Private generic functions
Generic Function, in-args: Private generic functions
Generic Function, infer-implicit-uniform-type: Private generic functions
Generic Function, init: Public generic functions
Generic Function, initialized-p: Public generic functions
Generic Function, lambda-g->func-spec: Private generic functions
Generic Function, layout-aligned-offset: Public generic functions
Generic Function, layout-base-alignment: Public generic functions
Generic Function, layout-base-offset: Public generic functions
Generic Function, layout-element-layout: Public generic functions
Generic Function, layout-machine-unit-size: Public generic functions
Generic Function, layout-members: Public generic functions
Generic Function, layout-name: Public generic functions
Generic Function, layout-varjo-type: Public generic functions
Generic Function, let-forms: Private generic functions
Generic Function, lisp-type->pixel-format: Public generic functions
Generic Function, local-arg-name: Private generic functions
Generic Function, major-version: Public generic functions
Generic Function, make-gpu-array: Public generic functions
Generic Function, make-length-same: Public generic functions
Generic Function, minor-version: Public generic functions
Generic Function, norm: Public generic functions
Generic Function, origin: Public generic functions
Generic Function, pipeline-stage-pairs: Private generic functions
Generic Function, pipeline-stages: Private generic functions
Generic Function, pipelines-that-use-this-as-a-stage: Private generic functions
Generic Function, pixel-format-from-array: Private generic functions
Generic Function, pointer: Public generic functions
Generic Function, pointer-arg: Private generic functions
Generic Function, populate: Public generic functions
Generic Function, pos: Public generic functions
Generic Function, print-mem: Public generic functions
Generic Function, pull-g: Public generic functions
Generic Function, pull1-g: Public generic functions
Generic Function, push-g: Public generic functions
Generic Function, recompile-pipelines-that-use-this-as-a-stage: Private generic functions
Generic Function, request-context: Public generic functions
Generic Function, resolution: Public generic functions
Generic Function, s-arrayp: Private generic functions
Generic Function, s-def: Private generic functions
Generic Function, s-dimensions: Private generic functions
Generic Function, s-element-type: Private generic functions
Generic Function, s-foreign-name: Private generic functions
Generic Function, s-layout: Private generic functions
Generic Function, s-name: Private generic functions
Generic Function, s-normalizedp: Private generic functions
Generic Function, s-parent-ffi-name: Private generic functions
Generic Function, s-reader: Private generic functions
Generic Function, s-slot-args: Private generic functions
Generic Function, s-slots: Private generic functions
Generic Function, s-type: Private generic functions
Generic Function, s-uses-method-p: Private generic functions
Generic Function, s-writer: Private generic functions
Generic Function, set-primary-thread-and-run: Private generic functions
Generic Function, shutdown: Public generic functions
Generic Function, spec->func-key: Private generic functions
Generic Function, symbol-names-cepl-structp: Public generic functions
Generic Function, tangent: Public generic functions
Generic Function, tex: Public generic functions
Generic Function, unpack-arrayd-assigner: Private generic functions
Generic Function, uploaders: Private generic functions
Generic Function, version-float: Public generic functions
Generic Function, viewport: Public generic functions
get-best-glsl-version: Private ordinary functions
get-body-string: Private ordinary functions
get-component-length: Private ordinary functions
get-dyn-return-types-from-stage: Private ordinary functions
get-feedback-out-vars: Private ordinary functions
get-foreign-uniform-function: Private ordinary functions
get-foreign-uniform-function-name: Private ordinary functions
get-free-context-id: Private ordinary functions
get-free-ssbo-id: Private ordinary functions
get-free-ubo-id: Private ordinary functions
get-func-as-stage-code: Private ordinary functions
get-gl-attachment-enum: Private compiler macros
get-gl-attachment-enum: Private ordinary functions
get-gpu-func-spec-tag: Private ordinary functions
get-possible-designators-for-name: Private ordinary functions
get-sampler-id-box: Private ordinary functions
get-shader-storage-block-index: Private ordinary functions
get-stage-key: Private ordinary functions
get-stage-kind-from-context: Private ordinary functions
get-transform-feedback-primitive: Private ordinary functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-from-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-typed-to-foreign: Public generic functions
get-uniform-block-index: Private ordinary functions
get-uniform-function: Private ordinary functions
get-uniform-function-name: Private ordinary functions
get-varyings: Private ordinary functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-assign-attrib-pointers: Public generic functions
gl-calc-byte-size: Private ordinary functions
gl-enum: Public ordinary functions
gl-initialized-p: Public ordinary functions
gl-type-size: Public ordinary functions
glambda-state-p: Private ordinary functions
glambda-state-pipeline: Private ordinary functions
glambda-state-recompiler: Private ordinary functions
glambda-state-spec: Private ordinary functions
gpu-array-access-style: Public ordinary functions
gpu-array-bb-access-style: Public ordinary functions
gpu-array-bb-buffer: Public ordinary functions
gpu-array-bb-byte-size: Public ordinary functions
gpu-array-bb-dimensions: Private ordinary functions
gpu-array-bb-element-byte-size: Public ordinary functions
gpu-array-bb-element-pixel-format: Public ordinary functions
gpu-array-bb-element-type: Public ordinary functions
gpu-array-bb-offset-in-bytes-into-buffer: Public ordinary functions
gpu-array-bb-p: Public ordinary functions
gpu-array-bb-row-alignment: Public ordinary functions
gpu-array-buffer: Public ordinary functions
gpu-array-buffer-id: Public ordinary functions
gpu-array-dimensions: Public ordinary functions
gpu-array-element-type: Public ordinary functions
gpu-array-face-num: Public ordinary functions
gpu-array-layer-num: Public ordinary functions
gpu-array-level-num: Public ordinary functions
gpu-array-p: Public ordinary functions
gpu-array-sub-data: Private ordinary functions
gpu-array-t-dimensions: Private ordinary functions
gpu-array-t-face-num: Public ordinary functions
gpu-array-t-image-format: Public ordinary functions
gpu-array-t-layer-num: Public ordinary functions
gpu-array-t-level-num: Public ordinary functions
gpu-array-t-p: Public ordinary functions
gpu-array-t-texture: Public ordinary functions
gpu-array-t-texture-type: Public ordinary functions
gpu-array-texture: Public ordinary functions
gpu-array-texture-type: Public ordinary functions
gpu-buffer-arrays: Public ordinary functions
gpu-buffer-bound: Public compiler macros
gpu-buffer-bound: Public ordinary functions
gpu-buffer-cache-id: Public ordinary functions
gpu-buffer-id: Public ordinary functions
gpu-buffer-p: Public ordinary functions
gpu-fence-p: Private ordinary functions
gpu-fence-signalled-p: Public ordinary functions
gpu-func-spec: Private generic functions
gpu-func-spec: Private generic functions
gpu-func-spec: Private generic functions
gpu-func-spec: Private generic functions
gpu-func-specs: Private ordinary functions
gpu-function: Public macros
gpu-functions: Public ordinary functions
gpu-query-cache-id: Public ordinary functions
gpu-query-enum: Public ordinary functions
gpu-query-id: Public ordinary functions
gpu-query-p: Private ordinary functions
gpu-query-result-available-p: Public ordinary functions
group: Public ordinary functions
guess-a-varjo-array-type: Private ordinary functions
guess-a-varjo-bool-type: Private ordinary functions
guess-a-varjo-float-type: Private ordinary functions
guess-a-varjo-integer-type: Private ordinary functions
guess-a-varjo-number-type: Private ordinary functions
guess-a-varjo-type: Private ordinary functions

H
half-float-from-foreign: Public ordinary functions
half-float-to-foreign: Public ordinary functions
half-vec2-from-foreign: Public ordinary functions
half-vec2-to-foreign: Public ordinary functions
half-vec3-from-foreign: Public ordinary functions
half-vec3-to-foreign: Public ordinary functions
half-vec4-from-foreign: Public ordinary functions
half-vec4-to-foreign: Public ordinary functions
handle: Private generic functions
handle: Private generic functions
handle-defn-declaration: Private generic functions
handle-defn-declaration: Private generic functions
handle-empty-framebuffer: Private ordinary functions
handle-transform-feedback: Private ordinary functions
has-feature: Public ordinary functions
has-func-type-in-args: Private ordinary functions
hash-keys: Public ordinary functions
hash-values: Public ordinary functions
hidden-symb: Public ordinary functions
holds-gl-object-ref-p: Public ordinary functions
host-step: Public ordinary functions
host-swap: Public ordinary functions

I
if-gl-context: Private macros
image-format->lisp-type: Public ordinary functions
image-format->pixel-format: Public ordinary functions
image-formatp: Public ordinary functions
in-args: Private generic functions
in-args: Private generic functions
indexp: Public ordinary functions
infer-implicit-uniform-type: Private generic functions
infer-implicit-uniform-type: Private generic functions
init: Public generic functions
init-buffer-stream-from-id: Private ordinary functions
init-buffer-stream-from-shared: Private ordinary functions
init-gl-context: Private ordinary functions
init-gpu-array-from-c-array: Private ordinary functions
init-gpu-array-no-data: Private ordinary functions
init-gpu-arrays-from-c-arrays: Private ordinary functions
init-gpu-buffer-now: Private ordinary functions
init-gpu-buffer-now-with-layouts: Private ordinary functions
init-pending-surfaces: Private ordinary functions
initialize: Public ordinary functions
initialize-all-delay-items-in-context: Private ordinary functions
initialize-all-delayed: Private ordinary functions
initialize-as-empty-fbo: Private ordinary functions
initialize-cepl: Public ordinary functions
initialize-delayed: Private ordinary functions
initialize-instance: Public standalone methods
initialize-regular-fbo: Private ordinary functions
initialized-p: Public generic functions
initialized-p: Public generic functions
initialized-p: Public generic functions
initialized-p: Public generic functions
initialized-p: Public generic functions
initialized-p: Public generic functions
initialized-p: Public generic functions
int-from-foreign: Public ordinary functions
int-to-foreign: Public ordinary functions
int32-from-foreign: Public ordinary functions
int32-to-foreign: Public ordinary functions
int8-from-foreign: Public ordinary functions
int8-to-foreign: Public ordinary functions
int8-vec2-from-foreign: Public ordinary functions
int8-vec2-to-foreign: Public ordinary functions
int8-vec3-from-foreign: Public ordinary functions
int8-vec3-to-foreign: Public ordinary functions
int8-vec4-from-foreign: Public ordinary functions
int8-vec4-to-foreign: Public ordinary functions
interactive-delete-gpu-function: Private ordinary functions
interactive-pick-gpu-function: Private ordinary functions
intersperse: Public ordinary functions
ivec2-from-foreign: Public ordinary functions
ivec2-to-foreign: Public ordinary functions
ivec3-from-foreign: Public ordinary functions
ivec3-to-foreign: Public ordinary functions
ivec4-from-foreign: Public ordinary functions
ivec4-to-foreign: Public ordinary functions

J
just-ignore: Public ordinary functions

K
keep: Public ordinary functions
kwd: Public ordinary functions

L
l-identity: Private macros
lambda-arg-p: Private ordinary functions
lambda-g: Public macros
lambda-g->func-spec: Private generic functions
lambda-g->func-spec: Private generic functions
lambda-g->lisp-code: Private ordinary functions
lambda-g->state: Private ordinary functions
lambda-g->varjo-lambda-code: Private ordinary functions
last1: Public ordinary functions
layout-aligned-offset: Public generic functions
layout-aligned-offset: Public generic functions
layout-base-alignment: Public generic functions
layout-base-alignment: Public generic functions
layout-base-offset: Public generic functions
layout-base-offset: Public generic functions
layout-element-layout: Public generic functions
layout-element-layout: Public generic functions
layout-machine-unit-size: Public generic functions
layout-machine-unit-size: Public generic functions
layout-members: Public generic functions
layout-members: Public generic functions
layout-name: Public generic functions
layout-name: Public generic functions
layout-varjo-type: Public generic functions
layout-varjo-type: Public generic functions
legacy-add-surface: Private ordinary functions
let-forms: Private generic functions
let-forms: Private generic functions
link-shaders: Private ordinary functions
lisp-type->image-format: Public ordinary functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lisp-type->pixel-format: Public generic functions
lispify-name: Public ordinary functions
list-not-consp: Public ordinary functions
list-of-c-arrays-p: Private ordinary functions
listen-to-lifecycle-changes: Public ordinary functions
listify: Public ordinary functions
load-in-release-mode: Public ordinary functions
load-shader: Private ordinary functions
load-shaders: Private ordinary functions
local-arg-name: Private generic functions
local-arg-name: Private generic functions
locally+: Public macros
lod-bias: Public ordinary functions
loop-disabling-attachments: Private ordinary functions
loop-enabling-attachments: Private ordinary functions
lowest-suitable-glsl-version: Private ordinary functions

M
machine-unit-size: Private ordinary functions
Macro, %with-blending: Private macros
Macro, %with-cepl-context-slots: Private macros
Macro, %with-scratch-texture-bound: Private macros
Macro, ---block-doc---: Private macros
Macro, assert-lambda-list: Public macros
Macro, assoc-bind: Public macros
Macro, case=: Public macros
Macro, dbind: Public macros
Macro, def-glsl-stage: Public macros
Macro, defcondition: Public macros
Macro, deferror: Public macros
Macro, define-compiler-macro-g: Public macros
Macro, define-const: Public macros
Macro, define-context-func: Private macros
Macro, define-defn-declaration: Public macros
Macro, defmacro-g: Public macros
Macro, defmethod+: Public macros
Macro, defn: Public macros
Macro, defn-inline: Public macros
Macro, defpipeline-g: Public macros
Macro, defstruct-g: Public macros
Macro, defun+: Public macros
Macro, defun-g: Public macros
Macro, defun-g-equiv: Public macros
Macro, defwarning: Public macros
Macro, ecase=: Public macros
Macro, gpu-function: Public macros
Macro, if-gl-context: Private macros
Macro, l-identity: Private macros
Macro, lambda-g: Public macros
Macro, locally+: Public macros
Macro, make-typed-from-foreign: Private macros
Macro, map-g: Public macros
Macro, map-g-into: Public macros
Macro, map-g-into*: Private macros
Macro, multi-map-g: Public macros
Macro, n-of*: Public macros
Macro, p->: Public macros
Macro, pipeline-g: Public macros
Macro, profile-block: Public macros
Macro, release-unwind-protect: Public macros
Macro, vec-bind: Public macros
Macro, with-blending: Public macros
Macro, with-blending-param-slots: Private macros
Macro, with-buffer-range-mapped: Private macros
Macro, with-c-array-freed: Public macros
Macro, with-c-arrays-freed: Public macros
Macro, with-cepl-context: Public macros
Macro, with-context-state-restored: Public macros
Macro, with-fbo-bound: Public macros
Macro, with-fbo-slots: Private macros
Macro, with-fbo-viewport: Public macros
Macro, with-glsl-stage-spec: Private macros
Macro, with-gpu-array-as-c-array: Public macros
Macro, with-gpu-array-as-pointer: Public macros
Macro, with-gpu-array-range-as-c-array: Public macros
Macro, with-gpu-array-range-as-pointer: Public macros
Macro, with-gpu-array-t: Private macros
Macro, with-gpu-func-spec: Private macros
Macro, with-gpu-query-bound: Public macros
Macro, with-hash: Public macros
Macro, with-hash*: Public macros
Macro, with-instances: Public macros
Macro, with-outputs-to-attachments: Public macros
Macro, with-setf: Public macros
Macro, with-setf*: Public macros
Macro, with-temp-sampler: Public macros
Macro, with-transform-feedback: Public macros
Macro, with-vao-bound: Public macros
Macro, with-viewport: Public macros
magnify-filter: Public ordinary functions
major-version: Public generic functions
major-version: Public generic functions
make-any-samples-passed-conservative-query: Public ordinary functions
make-any-samples-passed-query: Public ordinary functions
make-arg-assigners: Private ordinary functions
make-array-assigners: Private ordinary functions
make-array-slot-getter: Private ordinary functions
make-array-slot-setter: Private ordinary functions
make-arrays-indirect-command: Private ordinary functions
make-assigner: Private ordinary functions
make-assigner-let: Private ordinary functions
make-att: Public ordinary functions
make-base-gstruct-wrapper: Private ordinary functions
make-blending-params: Public ordinary functions
make-boop6: Private ordinary functions
make-buffer-stream: Public ordinary functions
make-buffer-stream-from-id: Private ordinary functions
make-buffer-stream-from-id-and-layouts: Public ordinary functions
make-buffer-stream-sharing: Public ordinary functions
make-c-array: Public ordinary functions
make-c-array-from-pointer: Public ordinary functions
make-compile-context: Private ordinary functions
make-complete-lambda-pipeline: Private ordinary functions
make-compute-space: Public ordinary functions
make-context: Public ordinary functions
make-context-internals: Private ordinary functions
make-context-shared-with-current-context: Public ordinary functions
make-default-sampler-id-box: Private ordinary functions
make-delayed: Private ordinary functions
make-draw-command-c-array: Public ordinary functions
make-draw-command-gpu-array: Public ordinary functions
make-elements-indirect-command: Private ordinary functions
make-empty-fbo-params: Public ordinary functions
make-eprim-slot-setter: Private ordinary functions
make-existing-fbo-empty: Private ordinary functions
make-fbo: Public ordinary functions
make-fbo-non-empty: Private ordinary functions
make-fbo-now: Private ordinary functions
make-g-pc: Public ordinary functions
make-g-pn: Public ordinary functions
make-g-pnb: Public ordinary functions
make-g-pnc: Public ordinary functions
make-g-pncb: Public ordinary functions
make-g-pnt: Public ordinary functions
make-g-pntb: Public ordinary functions
make-g-pntc: Public ordinary functions
make-g-pntcb: Public ordinary functions
make-g-pt: Public ordinary functions
make-gl-context: Public ordinary functions
make-gl-context-current-on-surface: Public ordinary functions
make-gl-context-shared-with-current-context: Public ordinary functions
make-glambda-state: Private ordinary functions
make-gpu-array: Public generic functions
make-gpu-array: Public generic functions
make-gpu-array: Public generic functions
make-gpu-array: Public generic functions
make-gpu-array-from-buffer: Public ordinary functions
make-gpu-array-from-buffer-id: Public ordinary functions
make-gpu-array-share-data: Private ordinary functions
make-gpu-arrays: Public ordinary functions
make-gpu-arrays-from-buffer: Public ordinary functions
make-gpu-arrays-from-buffer-id: Public ordinary functions
make-gpu-buffer: Public ordinary functions
make-gpu-buffer-from-id: Public ordinary functions
make-gpu-fence: Public ordinary functions
make-gpu-lambda: Private ordinary functions
make-gpu-query: Private ordinary functions
make-instance-wrapper-def: Private ordinary functions
make-keyword: Public ordinary functions
make-lambda-pipeline: Private ordinary functions
make-lambda-pipeline-inner: Private ordinary functions
make-lambda-pipeline-spec: Private ordinary functions
make-length-same: Public generic functions
make-length-same: Public generic functions
make-load-form: Public standalone methods
make-load-form: Public standalone methods
make-load-form: Public standalone methods
make-load-form: Public standalone methods
make-load-form: Public standalone methods
make-load-form: Public standalone methods
make-make-struct: Private ordinary functions
make-partial-lambda-pipeline: Private ordinary functions
make-pipeline-spec: Private ordinary functions
make-pipeline-state: Private ordinary functions
make-pixel-format: Public ordinary functions
make-populate: Private ordinary functions
make-primitives-generated-query: Public ordinary functions
make-project: Public ordinary functions
make-pull-push: Private ordinary functions
make-raw-buffer-stream: Public ordinary functions
make-render-buffer: Public ordinary functions
make-render-buffer-now: Private ordinary functions
make-sampler-assigner: Private ordinary functions
make-sampler-id-box: Public ordinary functions
make-sampler-now: Private ordinary functions
make-samples-passed-query: Public ordinary functions
make-scoped-gpu-query: Private ordinary functions
make-shader: Private ordinary functions
make-simple-assigner: Private ordinary functions
make-slot-getter: Private ordinary functions
make-slot-setter: Private ordinary functions
make-ssbo: Public ordinary functions
make-ssbo-assigner: Private ordinary functions
make-ssbo-from-array: Public ordinary functions
make-ssbo-from-buffer: Private ordinary functions
make-stand-in-lisp-func: Private ordinary functions
make-stencil-params: Public ordinary functions
make-struct-assigners: Private ordinary functions
make-struct-attrib-assigner: Private ordinary functions
make-struct-pixel-format: Private ordinary functions
make-surface: Public ordinary functions
make-surface-current: Public ordinary functions
make-surface-from-pending: Private ordinary functions
make-t-slot-getter: Private ordinary functions
make-t-slot-setter: Private ordinary functions
make-texture: Public ordinary functions
make-texture-from-id: Public ordinary functions
make-texture-now: Private ordinary functions
make-time-elapsed-query: Public ordinary functions
make-timestamp-query: Public ordinary functions
make-transform-feedback-primitives-written-query: Public ordinary functions
make-transform-feedback-stream: Public ordinary functions
make-typed-from-foreign: Private macros
make-ubo: Public ordinary functions
make-ubo-assigner: Private ordinary functions
make-ubo-from-array: Public ordinary functions
make-ubo-from-buffer: Private ordinary functions
make-uidx: Private ordinary functions
make-unbound-cepl-context: Private ordinary functions
make-uninitialized-buffer-stream: Public ordinary functions
make-uninitialized-fbo: Public ordinary functions
make-uninitialized-gpu-array-bb: Public ordinary functions
make-uninitialized-gpu-array-t: Public ordinary functions
make-uninitialized-gpu-buffer: Public ordinary functions
make-uninitialized-render-buffer: Public ordinary functions
make-uninitialized-sampler: Public ordinary functions
make-uninitialized-texture: Public ordinary functions
make-vao: Public ordinary functions
make-vao-from-id: Public ordinary functions
make-varjo-struct-def: Private ordinary functions
make-varjo-struct-lookup: Private ordinary functions
make-viewport: Public ordinary functions
map-c: Public ordinary functions
map-c-into: Public ordinary functions
map-g: Public macros
map-g-into: Public macros
map-g-into*: Private macros
mapcat: Public ordinary functions
mapg-context-p: Private ordinary functions
massage-compute-stage-name: Private ordinary functions
mat2-from-foreign: Public ordinary functions
mat2-to-foreign: Public ordinary functions
mat2x2-from-foreign: Public ordinary functions
mat2x2-to-foreign: Public ordinary functions
mat2x3-from-foreign: Public ordinary functions
mat2x3-to-foreign: Public ordinary functions
mat2x4-from-foreign: Public ordinary functions
mat2x4-to-foreign: Public ordinary functions
mat3-from-foreign: Public ordinary functions
mat3-to-foreign: Public ordinary functions
mat3x2-from-foreign: Public ordinary functions
mat3x2-to-foreign: Public ordinary functions
mat3x3-from-foreign: Public ordinary functions
mat3x3-to-foreign: Public ordinary functions
mat3x4-from-foreign: Public ordinary functions
mat3x4-to-foreign: Public ordinary functions
mat4-from-foreign: Public ordinary functions
mat4-to-foreign: Public ordinary functions
mat4x2-from-foreign: Public ordinary functions
mat4x2-to-foreign: Public ordinary functions
mat4x3-from-foreign: Public ordinary functions
mat4x3-to-foreign: Public ordinary functions
mat4x4-from-foreign: Public ordinary functions
mat4x4-to-foreign: Public ordinary functions
max-lod: Public ordinary functions
merge-into-assigner: Private ordinary functions
Method, %destroy-surface: Private generic functions
Method, %destroy-surface: Private generic functions
Method, %destroy-surface: Private generic functions
Method, %funcs-this-func-uses: Private generic functions
Method, %gpu-function: Private generic functions
Method, %gpu-function: Private generic functions
Method, %gpu-function: Private generic functions
Method, %init: Private generic functions
Method, %init: Private generic functions
Method, %make-gl-context: Private generic functions
Method, %make-gl-context: Private generic functions
Method, %make-gl-context-shared-with-current-context: Private generic functions
Method, %make-gl-context-shared-with-current-context: Private generic functions
Method, %make-gl-context-shared-with-current-context: Private generic functions
Method, %make-surface: Private generic functions
Method, %make-surface: Private generic functions
Method, %recompile-gpu-function-and-pipelines: Private generic functions
Method, %recompile-gpu-function-and-pipelines: Private generic functions
Method, %set-surface-fullscreen: Private generic functions
Method, %set-surface-fullscreen: Private generic functions
Method, %set-surface-fullscreen: Private generic functions
Method, %set-surface-size: Private generic functions
Method, %set-surface-size: Private generic functions
Method, %set-surface-size: Private generic functions
Method, %set-surface-title: Private generic functions
Method, %set-surface-title: Private generic functions
Method, %set-surface-title: Private generic functions
Method, %shutdown: Private generic functions
Method, %shutdown: Private generic functions
Method, %subscribe-to-gpu-func: Private generic functions
Method, %supports-multiple-contexts-p: Private generic functions
Method, %supports-multiple-contexts-p: Private generic functions
Method, %supports-multiple-surfaces-p: Private generic functions
Method, %supports-multiple-surfaces-p: Private generic functions
Method, %surface-fullscreen-p: Private generic functions
Method, %surface-fullscreen-p: Private generic functions
Method, %surface-fullscreen-p: Private generic functions
Method, %surface-title: Private generic functions
Method, %surface-title: Private generic functions
Method, %surface-title: Private generic functions
Method, %unsubscibe-from-all: Private generic functions
Method, %unsubscibe-from-all: Private generic functions
Method, (setf always-uploadp): Private generic functions
Method, (setf arg-name): Private generic functions
Method, (setf assigner-body): Private generic functions
Method, (setf assigner-index): Private generic functions
Method, (setf assigner-name): Private generic functions
Method, (setf assigner-type): Private generic functions
Method, (setf bi-tangent): Public generic functions
Method, (setf bi-tangent): Public generic functions
Method, (setf bi-tangent): Public generic functions
Method, (setf bi-tangent): Public generic functions
Method, (setf cleanup): Private generic functions
Method, (setf col): Public generic functions
Method, (setf col): Public generic functions
Method, (setf col): Public generic functions
Method, (setf col): Public generic functions
Method, (setf col): Public generic functions
Method, (setf dimensions): Public generic functions
Method, (setf dimensions): Public generic functions
Method, (setf funcs-that-use-this-func): Private generic functions
Method, (setf funcs-that-use-this-func): Private generic functions
Method, (setf gpu-func-spec): Private generic functions
Method, (setf gpu-func-spec): Private generic functions
Method, (setf let-forms): Private generic functions
Method, (setf local-arg-name): Private generic functions
Method, (setf norm): Public generic functions
Method, (setf norm): Public generic functions
Method, (setf norm): Public generic functions
Method, (setf norm): Public generic functions
Method, (setf norm): Public generic functions
Method, (setf norm): Public generic functions
Method, (setf norm): Public generic functions
Method, (setf norm): Public generic functions
Method, (setf origin): Public generic functions
Method, (setf pointer-arg): Private generic functions
Method, (setf pos): Public generic functions
Method, (setf pos): Public generic functions
Method, (setf pos): Public generic functions
Method, (setf pos): Public generic functions
Method, (setf pos): Public generic functions
Method, (setf pos): Public generic functions
Method, (setf pos): Public generic functions
Method, (setf pos): Public generic functions
Method, (setf pos): Public generic functions
Method, (setf pos): Public generic functions
Method, (setf resolution): Public generic functions
Method, (setf tangent): Public generic functions
Method, (setf tangent): Public generic functions
Method, (setf tangent): Public generic functions
Method, (setf tangent): Public generic functions
Method, (setf tex): Public generic functions
Method, (setf tex): Public generic functions
Method, (setf tex): Public generic functions
Method, (setf tex): Public generic functions
Method, (setf tex): Public generic functions
Method, (setf uploaders): Private generic functions
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, (setf v-signature): Private standalone methods
Method, always-uploadp: Private generic functions
Method, arg-name: Private generic functions
Method, assigner-body: Private generic functions
Method, assigner-index: Private generic functions
Method, assigner-name: Private generic functions
Method, assigner-type: Private generic functions
Method, bi-tangent: Public generic functions
Method, bi-tangent: Public generic functions
Method, bi-tangent: Public generic functions
Method, bi-tangent: Public generic functions
Method, can-be-shared-between-contexts-p: Public generic functions
Method, can-be-shared-between-contexts-p: Public generic functions
Method, can-be-shared-between-contexts-p: Public generic functions
Method, can-be-shared-between-contexts-p: Public generic functions
Method, can-be-shared-between-contexts-p: Public generic functions
Method, can-be-shared-between-contexts-p: Public generic functions
Method, can-be-shared-between-contexts-p: Public generic functions
Method, check-host: Private generic functions
Method, check-host: Private generic functions
Method, check-host: Private generic functions
Method, check-host: Private generic functions
Method, check-mipmap-level-count-valid: Private generic functions
Method, cleanup: Private generic functions
Method, col: Public generic functions
Method, col: Public generic functions
Method, col: Public generic functions
Method, col: Public generic functions
Method, col: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, copy-g: Public generic functions
Method, delete-func-spec: Private generic functions
Method, delete-gpu-function: Public generic functions
Method, delete-gpu-function: Public generic functions
Method, delete-gpu-function: Public generic functions
Method, delete-gpu-function: Public generic functions
Method, dimensions: Public generic functions
Method, dimensions: Public generic functions
Method, dimensions: Public generic functions
Method, dimensions: Public generic functions
Method, dimensions: Public generic functions
Method, dimensions: Public generic functions
Method, draw-buffer-i: Private generic functions
Method, element-byte-size: Public generic functions
Method, element-type: Public generic functions
Method, element-type: Public generic functions
Method, element-type: Public generic functions
Method, element-type: Public generic functions
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, expand-from-foreign: Public standalone methods
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free: Public generic functions
Method, free-gpu-array: Public generic functions
Method, free-gpu-array: Public generic functions
Method, free-texture: Public generic functions
Method, free-texture: Public generic functions
Method, func-key: Private generic functions
Method, func-key: Private generic functions
Method, func-key: Private generic functions
Method, func-key->name: Private generic functions
Method, func-key=: Private generic functions
Method, func-key=: Private generic functions
Method, func-key=: Private generic functions
Method, func-key=: Private generic functions
Method, funcs-that-use-this-func: Private generic functions
Method, funcs-that-use-this-func: Private generic functions
Method, gen-cleanup-block: Private generic functions
Method, gen-uploaders-block: Private generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-from-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, get-typed-to-foreign: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gl-assign-attrib-pointers: Public generic functions
Method, gpu-func-spec: Private generic functions
Method, gpu-func-spec: Private generic functions
Method, gpu-func-spec: Private generic functions
Method, handle: Private generic functions
Method, handle-defn-declaration: Private generic functions
Method, in-args: Private generic functions
Method, infer-implicit-uniform-type: Private generic functions
Method, initialize-instance: Public standalone methods
Method, initialized-p: Public generic functions
Method, initialized-p: Public generic functions
Method, initialized-p: Public generic functions
Method, initialized-p: Public generic functions
Method, initialized-p: Public generic functions
Method, initialized-p: Public generic functions
Method, lambda-g->func-spec: Private generic functions
Method, layout-aligned-offset: Public generic functions
Method, layout-base-alignment: Public generic functions
Method, layout-base-offset: Public generic functions
Method, layout-element-layout: Public generic functions
Method, layout-machine-unit-size: Public generic functions
Method, layout-members: Public generic functions
Method, layout-name: Public generic functions
Method, layout-varjo-type: Public generic functions
Method, let-forms: Private generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, lisp-type->pixel-format: Public generic functions
Method, local-arg-name: Private generic functions
Method, major-version: Public generic functions
Method, make-gpu-array: Public generic functions
Method, make-gpu-array: Public generic functions
Method, make-gpu-array: Public generic functions
Method, make-length-same: Public generic functions
Method, make-load-form: Public standalone methods
Method, make-load-form: Public standalone methods
Method, make-load-form: Public standalone methods
Method, make-load-form: Public standalone methods
Method, make-load-form: Public standalone methods
Method, make-load-form: Public standalone methods
Method, minor-version: Public generic functions
Method, name: Public standalone methods
Method, norm: Public generic functions
Method, norm: Public generic functions
Method, norm: Public generic functions
Method, norm: Public generic functions
Method, norm: Public generic functions
Method, norm: Public generic functions
Method, norm: Public generic functions
Method, norm: Public generic functions
Method, origin: Public generic functions
Method, pipeline-stage-pairs: Private generic functions
Method, pipeline-stages: Private generic functions
Method, pixel-format-from-array: Private generic functions
Method, pixel-format-from-array: Private generic functions
Method, pointer: Public generic functions
Method, pointer: Public generic functions
Method, pointer-arg: Private generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, populate: Public generic functions
Method, pos: Public generic functions
Method, pos: Public generic functions
Method, pos: Public generic functions
Method, pos: Public generic functions
Method, pos: Public generic functions
Method, pos: Public generic functions
Method, pos: Public generic functions
Method, pos: Public generic functions
Method, pos: Public generic functions
Method, pos: Public generic functions
Method, print-mem: Public generic functions
Method, print-mem: Public generic functions
Method, print-mem: Public generic functions
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, pull1-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, push-g: Public generic functions
Method, recompile-pipelines-that-use-this-as-a-stage: Private generic functions
Method, resolution: Public generic functions
Method, resolution: Public generic functions
Method, resolution: Public generic functions
Method, resolution: Public generic functions
Method, s-arrayp: Private generic functions
Method, s-def: Private generic functions
Method, s-dimensions: Private generic functions
Method, s-element-type: Private generic functions
Method, s-foreign-name: Private generic functions
Method, s-layout: Private generic functions
Method, s-layout: Private generic functions
Method, s-name: Private generic functions
Method, s-name: Private generic functions
Method, s-normalizedp: Private generic functions
Method, s-parent-ffi-name: Private generic functions
Method, s-reader: Private generic functions
Method, s-slot-args: Private generic functions
Method, s-slots: Private generic functions
Method, s-type: Private generic functions
Method, s-uses-method-p: Private generic functions
Method, s-writer: Private generic functions
Method, spec->func-key: Private generic functions
Method, spec->func-key: Private generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, symbol-names-cepl-structp: Public generic functions
Method, tangent: Public generic functions
Method, tangent: Public generic functions
Method, tangent: Public generic functions
Method, tangent: Public generic functions
Method, tex: Public generic functions
Method, tex: Public generic functions
Method, tex: Public generic functions
Method, tex: Public generic functions
Method, tex: Public generic functions
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, translate-from-foreign: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, type->type-spec: Public standalone methods
Method, unpack-arrayd-assigner: Private generic functions
Method, uploaders: Private generic functions
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-glsl-string: Public standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-signature: Private standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-slots: Public standalone methods
Method, v-type-of: Public standalone methods
Method, version-float: Public generic functions
Method, version-float: Public generic functions
min-lod: Public ordinary functions
minify-filter: Public ordinary functions
minor-version: Public generic functions
minor-version: Public generic functions
mkstr: Public ordinary functions
mode-alpha: Public ordinary functions
mode-rgb: Public ordinary functions
multi-buffer-data: Public ordinary functions
multi-map-g: Public macros
multisample-texture-p: Private ordinary functions

N
n-of: Public ordinary functions
n-of*: Public macros
name: Public standalone methods
nest-simple-loops: Private ordinary functions
never: Public ordinary functions
new-func-key: Private ordinary functions
ni-call: Public ordinary functions
ni-val: Public ordinary functions
norm: Public generic functions
norm: Public generic functions
norm: Public generic functions
norm: Public generic functions
norm: Public generic functions
norm: Public generic functions
norm: Public generic functions
norm: Public generic functions
norm: Public generic functions
normalize-slot-description: Private ordinary functions
note-change: Private ordinary functions
null-func-spec: Private ordinary functions

O
one: Public ordinary functions
origin: Public generic functions
origin: Public generic functions

P
p->: Public macros
pack-alignment: Public compiler macros
pack-alignment: Public ordinary functions
pack-pixels-from-texture: Private ordinary functions
pairs-key-to-stage: Private ordinary functions
parse-body+: Public ordinary functions
parse-compile-context: Private ordinary functions
parse-defn-args: Private ordinary functions
parse-gpipe-args: Private ordinary functions
parse-gpipe-args-explicit: Private ordinary functions
parse-gpipe-args-implicit: Private ordinary functions
parsed-gpipe-args->v-translate-args: Private ordinary functions
patch-uninitialized-context-with-version: Private ordinary functions
per-attachment-blending-available-p: Public compiler macros
per-attachment-blending-available-p: Public ordinary functions
pipeline-g: Public macros
pipeline-spec: Private ordinary functions
pipeline-stage-pairs: Private generic functions
pipeline-stage-pairs: Private generic functions
pipeline-stages: Private generic functions
pipeline-stages: Private generic functions
pipeline-state-diff-tag: Private ordinary functions
pipeline-state-enable-rasterizer: Private ordinary functions
pipeline-state-implicit-uniform-upload-func: Private ordinary functions
pipeline-state-p: Private ordinary functions
pipeline-state-prog-ids: Private ordinary functions
pipeline-state-tfs-array-count: Private ordinary functions
pipeline-state-tfs-primitive: Private ordinary functions
pipeline-state-uniform-int-ids: Private ordinary functions
pipeline-state-uniform-uint-ids: Private ordinary functions
pipelines-that-use-this-as-a-stage: Private generic functions
pixel-format!: Private ordinary functions
pixel-format->image-format: Public ordinary functions
pixel-format->lisp-type: Public ordinary functions
pixel-format-comp-length: Public ordinary functions
pixel-format-components: Public ordinary functions
pixel-format-from-array: Private generic functions
pixel-format-from-array: Private generic functions
pixel-format-from-array: Private generic functions
pixel-format-normalize: Public ordinary functions
pixel-format-p: Public ordinary functions
pixel-format-reversed: Public ordinary functions
pixel-format-sizes: Public ordinary functions
pixel-format-type: Public ordinary functions
po2p: Private ordinary functions
pointer: Public generic functions
pointer: Public generic functions
pointer: Public generic functions
pointer-arg: Private generic functions
pointer-arg: Private generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate: Public generic functions
populate-arrays-indirect-command: Private ordinary functions
populate-elements-indirect-command: Private ordinary functions
populate-g-pc: Private ordinary functions
populate-g-pn: Private ordinary functions
populate-g-pnb: Private ordinary functions
populate-g-pnc: Private ordinary functions
populate-g-pncb: Private ordinary functions
populate-g-pnt: Private ordinary functions
populate-g-pntb: Private ordinary functions
populate-g-pntc: Private ordinary functions
populate-g-pntcb: Private ordinary functions
populate-g-pt: Private ordinary functions
pos: Public generic functions
pos: Public generic functions
pos: Public generic functions
pos: Public generic functions
pos: Public generic functions
pos: Public generic functions
pos: Public generic functions
pos: Public generic functions
pos: Public generic functions
pos: Public generic functions
pos: Public generic functions
post-gl-init: Private ordinary functions
potential-struct-layout: Private ordinary functions
pre-gl-init: Private ordinary functions
preprocess-gpu-arrays-for-vao: Private ordinary functions
primary-context: Private ordinary functions
primary-thread: Private ordinary functions
primitive-keyword-to-enum-val: Private ordinary functions
primitive-vert-length: Private ordinary functions
primitives-generated-query-active-p: Private ordinary functions
primitives-generated-query-cache-id: Private ordinary functions
primitives-generated-query-enum: Private ordinary functions
primitives-generated-query-id: Private ordinary functions
primitives-generated-query-p: Private ordinary functions
print-mem: Public generic functions
print-mem: Public generic functions
print-mem: Public generic functions
print-mem: Public generic functions
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
process-defn-declares: Private ordinary functions
process-fbo-init-pattern: Private ordinary functions
process-glsl-arg: Private ordinary functions
process-layout: Private ordinary functions
process-layout: Private ordinary functions
process-layout-specifier: Private ordinary functions
process-mp-path: Private ordinary functions
process-pixel-format: Private ordinary functions
process-stream-layout: Private ordinary functions
profile-block: Public macros
program-attrib-count: Private ordinary functions
program-attributes: Private ordinary functions
program-uniform-count: Private ordinary functions
program-uniforms: Private ordinary functions
ptr-index: Public compiler macros
ptr-index: Public ordinary functions
ptr-index-1d: Private ordinary functions
ptr-index-2d: Private ordinary functions
ptr-index-3d: Private ordinary functions
ptr-index-4d: Private ordinary functions
pull-all-gpu-commands-issued-time: Public ordinary functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g: Public generic functions
pull-g-soft-multi-func-message: Private ordinary functions
pull-gpu-query-result: Public ordinary functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
pull1-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-g: Public generic functions
push-gpu-query-result-to-gpu-array: Public ordinary functions

Q
query-all-gpu-commands-completed-time: Public ordinary functions
quit: Public ordinary functions

R
range: Public ordinary functions
rangei: Public ordinary functions
read-fbo-bound: Public ordinary functions
read-gpu-function-choice: Private ordinary functions
read-integers: Public ordinary functions
reallocate-buffer: Public ordinary functions
reallocate-gpu-array: Public ordinary functions
recompile-name: Private ordinary functions
recompile-pipelines-that-use-this-as-a-stage: Private generic functions
recompile-pipelines-that-use-this-as-a-stage: Private generic functions
register-event-listener: Public ordinary functions
register-event-listener: Private ordinary functions
register-fbo: Private ordinary functions
register-gpu-buffer: Private ordinary functions
register-host: Public ordinary functions
register-lambda-pipeline: Private ordinary functions
register-named-pipeline: Private ordinary functions
register-texture: Private ordinary functions
reinit-on-context: Private ordinary functions
release-unwind-protect: Public macros
remove-surface: Public ordinary functions
render-buffer-dimensions: Public ordinary functions
render-buffer-element-type: Private ordinary functions
render-buffer-image-format: Public ordinary functions
render-buffer-multisample-p: Public ordinary functions
render-buffer-p: Public ordinary functions
render-buffer-resolution: Public ordinary functions
repl: Public ordinary functions
replace-host: Private ordinary functions
replace-nth: Public ordinary functions
request-context: Public generic functions
request-program-id-for: Private ordinary functions
resolution: Public generic functions
resolution: Public generic functions
resolution: Public generic functions
resolution: Public generic functions
resolution: Public generic functions
restore-array-of-bound-gpu-buffers: Private ordinary functions
restore-array-of-bound-samplers: Private ordinary functions
restore-array-of-ssbo-bindings-buffer-ids: Private ordinary functions
restore-array-of-ubo-bindings-buffer-ids: Private ordinary functions
restore-clear-color: Private ordinary functions
restore-color-masks: Private ordinary functions
restore-cull-face: Private ordinary functions
restore-current-scissor-viewports: Private ordinary functions
restore-depth-clamp: Private ordinary functions
restore-depth-mask: Private ordinary functions
restore-depth-range: Private ordinary functions
restore-depth-test-function: Private ordinary functions
restore-fbo-bindings: Private ordinary functions
restore-front-face: Private ordinary functions
restore-pack-alignment: Private ordinary functions
restore-program: Private ordinary functions
restore-stencil: Private ordinary functions
restore-unpack-alignment: Private ordinary functions
restore-vao: Private ordinary functions
restore-viewport: Private ordinary functions
rm-index-to-coords: Private ordinary functions
round-to-next-multiple: Private ordinary functions
row-major-aref-c: Public ordinary functions
runtime-restore-block-checks: Private ordinary functions

S
s-arrayp: Private generic functions
s-arrayp: Private generic functions
s-def: Private generic functions
s-def: Private generic functions
s-dimensions: Private generic functions
s-dimensions: Private generic functions
s-element-type: Private generic functions
s-element-type: Private generic functions
s-foreign-name: Private generic functions
s-foreign-name: Private generic functions
s-layout: Private generic functions
s-layout: Private generic functions
s-layout: Private generic functions
s-name: Private generic functions
s-name: Private generic functions
s-name: Private generic functions
s-normalizedp: Private generic functions
s-normalizedp: Private generic functions
s-parent-ffi-name: Private generic functions
s-parent-ffi-name: Private generic functions
s-reader: Private generic functions
s-reader: Private generic functions
s-slot-args: Private generic functions
s-slot-args: Private generic functions
s-slots: Private generic functions
s-slots: Private generic functions
s-type: Private generic functions
s-type: Private generic functions
s-uses-method-p: Private generic functions
s-uses-method-p: Private generic functions
s-writer: Private generic functions
s-writer: Private generic functions
sample: Public ordinary functions
sampler-id-box-id: Public ordinary functions
sampler-id-box-p: Private ordinary functions
sampler-id-box-shared-p: Public ordinary functions
sampler-on-context: Private ordinary functions
sampler-p: Public ordinary functions
sampler-shared-p: Public ordinary functions
sampler-texture: Public ordinary functions
sampler-type: Public ordinary functions
sampler-typep: Private ordinary functions
samples-passed-query-active-p: Private ordinary functions
samples-passed-query-cache-id: Private ordinary functions
samples-passed-query-enum: Private ordinary functions
samples-passed-query-id: Private ordinary functions
samples-passed-query-p: Private ordinary functions
scalar-type-p: Private ordinary functions
scan-array-for-type: Private ordinary functions
scan-for-type: Private ordinary functions
scan-list-for-type: Private ordinary functions
scissor-viewport: Public compiler macros
scissor-viewport: Public ordinary functions
scoped-gpu-query-active-p: Public ordinary functions
scoped-gpu-query-cache-id: Private ordinary functions
scoped-gpu-query-enum: Private ordinary functions
scoped-gpu-query-id: Private ordinary functions
scoped-gpu-query-p: Private ordinary functions
serialize-stage-pairs: Private ordinary functions
set-buffer-bound-static: Private ordinary functions
set-context-defaults: Private ordinary functions
set-current-blend-params: Private compiler macros
set-current-blend-params: Private ordinary functions
set-current-blend-params-from-fbo: Private compiler macros
set-current-blend-params-from-fbo: Private ordinary functions
set-default-swap-arg: Public ordinary functions
set-draw-command: Public ordinary functions
set-make-gl-context-current-on-surface: Public ordinary functions
set-minify-filter: Public ordinary functions
set-patch-stream-primitive: Private ordinary functions
set-primary-thread-and-run: Private generic functions
set-register-event-callback-func: Public ordinary functions
set-sampler-bound: Private ordinary functions
set-step-func: Public ordinary functions
set-surface-fullscreen: Public ordinary functions
set-surface-size: Public ordinary functions
set-surface-title: Public ordinary functions
set-swap-func: Public ordinary functions
set-window-size-func: Public ordinary functions
shader-type-from-path: Private ordinary functions
short-from-foreign: Public ordinary functions
short-to-foreign: Public ordinary functions
shutdown: Public generic functions
shutting-down-p: Public ordinary functions
slow-query-mipmap-count: Private ordinary functions
sn-equal: Public ordinary functions
source-alpha: Public ordinary functions
source-rgb: Public ordinary functions
spec->func-key: Private generic functions
spec->func-key: Private generic functions
spec->func-key: Private generic functions
spec-changed-p: Private ordinary functions
split-args-for-dyn-call: Private ordinary functions
split-float-version: Public ordinary functions
split-seq-by-seq: Public ordinary functions
split-string: Public ordinary functions
ssbo-bind-buffer-id-range: Private ordinary functions
ssbo-data: Public ordinary functions
ssbo-data-type: Public ordinary functions
ssbo-id: Public ordinary functions
ssbo-index: Public ordinary functions
ssbo-owns-gpu-array: Public ordinary functions
ssbo-p: Public ordinary functions
stage-formp: Private ordinary functions
stages-require-partial-pipeline: Private ordinary functions
stateless-quad-geometry-stage: Private ordinary functions
stateless-quad-vertex-stage: Private ordinary functions
stencil-decf: Public ordinary functions
stencil-decf-wrap: Public ordinary functions
stencil-formatp: Public ordinary functions
stencil-incf: Public ordinary functions
stencil-incf-wrap: Public ordinary functions
stencil-invert: Public ordinary functions
stencil-mask: Public compiler macros
stencil-mask: Public ordinary functions
stencil-operation-enum-to-func: Private ordinary functions
stencil-operation-to-enum: Private ordinary functions
stencil-params-mask: Public ordinary functions
stencil-params-on-dpfail: Public ordinary functions
stencil-params-on-dppass: Public ordinary functions
stencil-params-on-sfail: Public ordinary functions
stencil-params-on-stencil-pass-depth-test-fail: Public ordinary functions
stencil-params-on-stencil-pass-depth-test-pass: Public ordinary functions
stencil-params-on-stencil-test-fail: Public ordinary functions
stencil-params-p: Private ordinary functions
stencil-params-test: Public ordinary functions
stencil-params-value: Public ordinary functions
stencil-replace: Public ordinary functions
stencil-test-enum-to-func: Private ordinary functions
stencil-test-to-enum: Private ordinary functions
step-host: Public ordinary functions
stop-listening-to-lifecycle-changes: Public ordinary functions
sub-at-index: Public ordinary functions
subseq-c: Public ordinary functions
subseq-g: Public ordinary functions
subseq-g-raw: Public ordinary functions
suitable-array-for-index-p: Private ordinary functions
supports-multiple-contexts-p: Public ordinary functions
supports-multiple-surfaces-p: Public ordinary functions
surface-dimensions: Public ordinary functions
surface-dimensions: Private ordinary functions
surface-fullscreen-p: Public ordinary functions
surface-fullscreen-p: Public ordinary functions
surface-resolution: Public ordinary functions
surface-resolution: Private ordinary functions
surface-title: Public ordinary functions
surface-title: Public ordinary functions
surfaces: Public ordinary functions
suspended-p: Private ordinary functions
swap: Public ordinary functions
swap-versions: Private ordinary functions
symb: Public ordinary functions
symb-name=: Public ordinary functions
symb-package: Public ordinary functions
symbol-name-equal: Public ordinary functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions
symbol-names-cepl-structp: Public generic functions

T
tangent: Public generic functions
tangent: Public generic functions
tangent: Public generic functions
tangent: Public generic functions
tangent: Public generic functions
tex: Public generic functions
tex: Public generic functions
tex: Public generic functions
tex: Public generic functions
tex: Public generic functions
tex: Public generic functions
tex-kind->cache-index: Private ordinary functions
tex-storage-1d: Private ordinary functions
tex-storage-2d: Private ordinary functions
tex-storage-2d-multisample: Private ordinary functions
tex-storage-3d: Private ordinary functions
tex-storage-3d-multisample: Private ordinary functions
texref: Public ordinary functions
texture-allocated-p: Public ordinary functions
texture-base-dimensions: Public ordinary functions
texture-cache-id: Public ordinary functions
texture-cubes-p: Public ordinary functions
texture-element-type: Public ordinary functions
texture-fixed-sample-locations-p: Public ordinary functions
texture-id: Public ordinary functions
texture-image-format: Public ordinary functions
texture-last-sampler-id: Public ordinary functions
texture-layer-count: Public ordinary functions
texture-mipmap-levels: Public ordinary functions
texture-mutable-p: Public ordinary functions
texture-p: Public ordinary functions
texture-samples: Public ordinary functions
texture-type: Public ordinary functions
throw-missing-col-attrs: Private ordinary functions
time-elapsed-query-active-p: Private ordinary functions
time-elapsed-query-cache-id: Private ordinary functions
time-elapsed-query-enum: Private ordinary functions
time-elapsed-query-id: Private ordinary functions
time-elapsed-query-p: Private ordinary functions
timestamp-query-cache-id: Private ordinary functions
timestamp-query-enum: Private ordinary functions
timestamp-query-id: Private ordinary functions
timestamp-query-p: Private ordinary functions
to-active: Private ordinary functions
to-cepl-type-spec: Private ordinary functions
to-shutting-down: Private ordinary functions
to-suspended: Private ordinary functions
transform-feedback-bind-buffer-id-range: Private ordinary functions
transform-feedback-primitives-written-query-active-p: Private ordinary functions
transform-feedback-primitives-written-query-cache-id: Private ordinary functions
transform-feedback-primitives-written-query-enum: Private ordinary functions
transform-feedback-primitives-written-query-id: Private ordinary functions
transform-feedback-primitives-written-query-p: Private ordinary functions
transform-feedback-stream-arrays: Public ordinary functions
transform-feedback-stream-p: Private ordinary functions
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
translate-from-foreign: Public standalone methods
try-guessing-a-varjo-type-for-symbol: Private ordinary functions
try-injecting-a-constant: Private ordinary functions
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type->type-spec: Public standalone methods
type-contains-structs: Private ordinary functions
typed-defp: Private ordinary functions

U
ubo-bind-buffer-id-range: Private ordinary functions
ubo-data: Public ordinary functions
ubo-data-type: Public ordinary functions
ubo-id: Public ordinary functions
ubo-index: Public ordinary functions
ubo-owns-gpu-array: Public ordinary functions
ubo-p: Public ordinary functions
uidx-int: Private ordinary functions
uidx-p: Private ordinary functions
uidx-uint: Private ordinary functions
uint-from-foreign: Public ordinary functions
uint-to-foreign: Public ordinary functions
uint32-from-foreign: Public ordinary functions
uint32-to-foreign: Public ordinary functions
uint8-from-foreign: Public ordinary functions
uint8-to-foreign: Public ordinary functions
uint8-vec2-from-foreign: Public ordinary functions
uint8-vec2-to-foreign: Public ordinary functions
uint8-vec3-from-foreign: Public ordinary functions
uint8-vec3-to-foreign: Public ordinary functions
uint8-vec4-from-foreign: Public ordinary functions
uint8-vec4-to-foreign: Public ordinary functions
unbind-texture-from-scratch: Private ordinary functions
unbound-cepl-context-consumed: Private ordinary functions
unbound-cepl-context-gl-context: Private ordinary functions
unbound-cepl-context-p: Private ordinary functions
unbound-cepl-context-requested-gl-version: Private ordinary functions
unbound-cepl-context-shared: Private ordinary functions
unbound-cepl-context-surface: Private ordinary functions
unbound-cepl-context-surfaces: Private ordinary functions
uniform-1b: Private ordinary functions
uniform-1f: Private ordinary functions
uniform-1i: Private ordinary functions
uniform-2f: Private ordinary functions
uniform-2i: Private ordinary functions
uniform-3f: Private ordinary functions
uniform-3i: Private ordinary functions
uniform-4f: Private ordinary functions
uniform-4i: Private ordinary functions
uniform-matrix-2ft: Private ordinary functions
uniform-matrix-2fvt: Private ordinary functions
uniform-matrix-3ft: Private ordinary functions
uniform-matrix-3fvt: Private ordinary functions
uniform-matrix-4ft: Private ordinary functions
uniform-matrix-4fvt: Private ordinary functions
uniform-sampler: Private ordinary functions
uninitialized-p: Public ordinary functions
unknown-gl-id-p: Public ordinary functions
unpack-alignment: Public compiler macros
unpack-alignment: Public ordinary functions
unpack-arrayd-assigner: Private generic functions
unpack-arrayd-assigner: Private generic functions
update-clear-mask: Private ordinary functions
update-data: Private ordinary functions
update-draw-buffer-map: Private ordinary functions
update-pipeline-spec: Private ordinary functions
update-specs-with-missing-dependencies: Private ordinary functions
upload-c-array-to-gpu-array-t: Private ordinary functions
upload-gpu-array-bb-to-gpu-array-t: Private ordinary functions
uploaders: Private generic functions
uploaders: Private generic functions
use-program: Private ordinary functions
ushort-from-foreign: Public ordinary functions
ushort-to-foreign: Public ordinary functions
uvec2-from-foreign: Public ordinary functions
uvec2-to-foreign: Public ordinary functions
uvec3-from-foreign: Public ordinary functions
uvec3-to-foreign: Public ordinary functions
uvec4-from-foreign: Public ordinary functions
uvec4-to-foreign: Public ordinary functions

V
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-glsl-string: Public standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-signature: Private standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-slots: Public standalone methods
v-type-of: Public standalone methods
valid-image-format-for-buffer-backed-texturep: Public ordinary functions
valid-index-p: Private ordinary functions
valid-pixel-format-p: Private ordinary functions
validate-defstruct-g-form: Private ordinary functions
validate-dimensions: Private ordinary functions
validate-pixel-format: Private ordinary functions
validate-stage-names: Private ordinary functions
validate-varjo-type-spec: Private ordinary functions
vao-bound: Public ordinary functions
varjo->gl-stage-names: Private ordinary functions
vec-bind: Public macros
vec2-from-foreign: Public ordinary functions
vec2-to-foreign: Public ordinary functions
vec3-from-foreign: Public ordinary functions
vec3-to-foreign: Public ordinary functions
vec4-from-foreign: Public ordinary functions
vec4-to-foreign: Public ordinary functions
version-float: Public generic functions
version-float: Public generic functions
version-float: Public generic functions
viewport: Public generic functions
viewport-dimensions: Public ordinary functions
viewport-eql: Public ordinary functions
viewport-for-array: Private ordinary functions
viewport-origin: Public ordinary functions
viewport-origin-i: Public ordinary functions
viewport-origin-x: Public ordinary functions
viewport-origin-y: Public ordinary functions
viewport-p: Public ordinary functions
viewport-params-to-vec4: Public ordinary functions
viewport-resolution: Public ordinary functions
viewport-resolution-x: Public ordinary functions
viewport-resolution-y: Public ordinary functions
vs-spliced-values: Private ordinary functions

W
wait-on-gpu-fence: Public ordinary functions
walk-replace: Public ordinary functions
window-dimensions: Public ordinary functions
window-resolution: Public ordinary functions
window-size: Public ordinary functions
with-blending: Public macros
with-blending-param-slots: Private macros
with-buffer-range-mapped: Private macros
with-c-array-freed: Public macros
with-c-arrays-freed: Public macros
with-cepl-context: Public macros
with-context-state-restored: Public macros
with-fbo-bound: Public macros
with-fbo-slots: Private macros
with-fbo-viewport: Public macros
with-glsl-stage-spec: Private macros
with-gpu-array-as-c-array: Public macros
with-gpu-array-as-pointer: Public macros
with-gpu-array-range-as-c-array: Public macros
with-gpu-array-range-as-pointer: Public macros
with-gpu-array-t: Private macros
with-gpu-func-spec: Private macros
with-gpu-query-bound: Public macros
with-hash: Public macros
with-hash*: Public macros
with-instances: Public macros
with-outputs-to-attachments: Public macros
with-setf: Public macros
with-setf*: Public macros
with-setf-internals: Private ordinary functions
with-temp-sampler: Public macros
with-transform-feedback: Public macros
with-vao-bound: Public macros
with-viewport: Public macros
wrap: Public ordinary functions
wrap-allowing-recompilation: Private ordinary functions
wrap-eq: Private ordinary functions

X
xsymbolp: Private ordinary functions

Z
zero: Public ordinary functions


A.3 Variables

Jump to:   %   *   +  
A   B   C   D   E   F   G   H   I   K   L   M   N   O   P   Q   R   S   T   U   V   W  
Index Entry  Section

%
%index-type-enum: Public structures
%index-type-size: Public structures
%primitive: Public structures
%start: Public structures
%start-byte: Public structures

*
*active-listeners*: Private special variables
*anisotropy-available*: Private special variables
*api-0-context-singleton*: Private special variables
*api-0-make-context-called*: Private special variables
*api-0-make-window-called*: Private special variables
*api-0-window-singleton*: Private special variables
*bptc-compressed-formats*: Public special variables
*cache-last-compile-result*: Private special variables
*cepl-context*: Private special variables
*cepl-release-mode*: Private special variables
*color-renderable-formats*: Public special variables
*contexts*: Private special variables
*contexts-lock*: Private special variables
*current-host*: Private special variables
*declared-host*: Private special variables
*default-sampler-id-box*: Private special variables
*dependent-gpu-functions*: Private special variables
*dependent-gpu-functions-lock*: Private special variables
*depth-formats*: Public special variables
*depth-stencil-formats*: Public special variables
*extra-primitive-types*: Public special variables
*fake-sampler-id*: Private special variables
*fake-sampler-id-lock*: Private special variables
*floating-point-formats*: Public special variables
*free-context-ids*: Private special variables
*free-context-ids-lock*: Private special variables
*freed-ssbo-id*: Private special variables
*freed-ubo-id*: Private special variables
*get-gpu-lambda-state*: Private special variables
*gpu-func-diff-tag*: Private special variables
*gpu-func-specs*: Private special variables
*gpu-func-specs-lock*: Private special variables
*gpu-pipeline-specs*: Private special variables
*gpu-pipeline-specs-lock*: Private special variables
*image-formats*: Public special variables
*immutable-available*: Public special variables
*init-pipeline-lock*: Private special variables
*lifecycle-state*: Private special variables
*lowest-unused-ssbo-id*: Private special variables
*lowest-unused-ubo-id*: Private special variables
*map-of-pipeline-names-to-gl-ids*: Private special variables
*map-of-pipeline-names-to-gl-ids-lock*: Private special variables
*pipeline-body-context-var*: Private special variables
*post-context-init*: Private special variables
*primary-context*: Private special variables
*print-gpu-function-subscriptions*: Private special variables
*red/green-compressed-formats*: Public special variables
*regular-color-formats*: Public special variables
*s3tc/dxt-compessed-formats*: Public special variables
*samplers-available*: Private special variables
*shutting-down-listeners*: Private special variables
*signed-integral-formats*: Public special variables
*signed-normalized-integer-formats*: Public special variables
*special-color-formats*: Public special variables
*srgb-color-formats*: Public special variables
*ssbo-id-lock*: Private special variables
*standard-declarations*: Private special variables
*stencil-formats*: Public special variables
*struct-slot-defs*: Private special variables
*suppress-upload-message*: Private special variables
*suspended-listeners*: Private special variables
*template-dir*: Private special variables
*ubo-id-lock*: Private special variables
*unsigned-integral-formats*: Public special variables
*unsigned-normalized-integer-formats*: Public special variables
*valid-image-formats-for-buffer-backed-texture*: Public special variables
*valid-layout-specifiers*: Private special variables
*warn-when-cant-test-compile*: Private special variables

+
+cpu->gpu-vec-mappings+: Private constants
+cube-face-order+: Private constants
+cube-face-order-enums+: Private constants
+discard-attachment+: Public constants
+gl-color-mask-bit-size+: Private constants
+gl-enum-size+: Private constants
+gl-id-bit-size+: Public constants
+gl-integral-pixel-types+: Private constants
+gl-pixel-to-internal-map+: Private constants
+lifecycle-states+: Private constants
+max-context-count+: Public constants
+null-att+: Private special variables
+null-buffer-backed-gpu-array+: Public special variables
+null-fbo+: Public special variables
+null-gl-id+: Public constants
+null-gpu-buffer+: Public special variables
+null-texture+: Public special variables
+null-texture-backed-gpu-array+: Public special variables
+null-vao+: Public special variables
+possible-texture-keys+: Private constants
+sampler-types+: Private constants
+uninitialized-buffer-array+: Private special variables
+unknown-clear-mask+: Private constants
+unknown-gl-id+: Public constants
+unknown-uniform-int-id+: Private constants
+unknown-uniform-uint-id+: Private constants
+valid-fbo-targets+: Private constants
+valid-pixel-components+: Private constants
+valid-pixel-packed-sizes+: Private constants
+valid-pixel-types+: Private constants
+valid-stencil-tests+: Private constants
+valid-texture-storage-options+: Private constants
+valid-texture-subset+: Private constants

A
access-style: Public structures
active-p: Public structures
actual-uniforms: Private classes
aligned-offset: Private classes
allocated-p: Public structures
alternatives: Public conditions
always-uploadp: Private classes
anisotropy: Public structures
arg: Public conditions
arg-name: Private classes
arg-names: Public conditions
args: Public conditions
args: Public conditions
args: Public conditions
args: Public conditions
args: Public conditions
args: Public conditions
args: Public conditions
args: Public conditions
args: Private conditions
array: Public conditions
array: Public structures
array-of-bound-gpu-buffers: Public structures
array-of-bound-queries: Public structures
array-of-bound-samplers: Public structures
array-of-gpu-buffers: Public structures
array-of-ssbo-binding-ranges: Public structures
array-of-ssbo-bindings-buffer-ids: Public structures
array-of-textures: Public structures
array-of-transform-feedback-bindings-buffer-ids: Public structures
array-of-ubo-binding-ranges: Public structures
array-of-ubo-bindings-buffer-ids: Public structures
array-type: Public conditions
arrays: Public structures
arrays: Public structures
asset-name: Public conditions
attachment: Public conditions
attachment-count: Public structures

B
backing-array: Public structures
base-alignment: Private classes
base-dimensions: Public structures
base-offset: Private classes
base-vertex: Public structures
blend: Public structures
blending-params: Public structures
body: Private classes
body: Private classes
body: Private classes
boop-x: Private structures
boop-y: Private structures
border-color: Public structures
bound: Public structures
bound-thread: Public structures
bparams: Public structures
buffer: Public structures
buffer-storage: Public conditions
byte-size: Public structures
byte-size: Public structures

C
c-arr: Private conditions
c-arr-dimensions: Public conditions
cache-id: Public structures
cache-id: Public structures
cache-id: Public structures
cache-id: Public structures
cache-id: Public structures
cache-id: Public structures
cache-id: Public structures
cache-id: Public structures
cache-id: Public structures
cache-id: Public structures
cached-compile-results: Private classes
cached-compile-results: Private classes
callee: Public conditions
choices: Public conditions
choices: Public conditions
clauses: Public conditions
clauses: Public conditions
cleanup: Private classes
clear-color: Public structures
clear-mask: Public structures
color-arrays: Public structures
color-arrays-fill-pointer: Public structures
color-masks: Public structures
comp-length: Public structures
compare: Public structures
components: Public structures
compute-stage: Private classes
Constant, +cpu->gpu-vec-mappings+: Private constants
Constant, +cube-face-order+: Private constants
Constant, +cube-face-order-enums+: Private constants
Constant, +discard-attachment+: Public constants
Constant, +gl-color-mask-bit-size+: Private constants
Constant, +gl-enum-size+: Private constants
Constant, +gl-id-bit-size+: Public constants
Constant, +gl-integral-pixel-types+: Private constants
Constant, +gl-pixel-to-internal-map+: Private constants
Constant, +lifecycle-states+: Private constants
Constant, +max-context-count+: Public constants
Constant, +null-gl-id+: Public constants
Constant, +possible-texture-keys+: Private constants
Constant, +sampler-types+: Private constants
Constant, +unknown-clear-mask+: Private constants
Constant, +unknown-gl-id+: Public constants
Constant, +unknown-uniform-int-id+: Private constants
Constant, +unknown-uniform-uint-id+: Private constants
Constant, +valid-fbo-targets+: Private constants
Constant, +valid-pixel-components+: Private constants
Constant, +valid-pixel-packed-sizes+: Private constants
Constant, +valid-pixel-types+: Private constants
Constant, +valid-stencil-tests+: Private constants
Constant, +valid-texture-storage-options+: Private constants
Constant, +valid-texture-subset+: Private constants
constant-names: Public conditions
consumed: Private structures
context: Public conditions
context: Public conditions
context: Public conditions
context: Public conditions
context: Private classes
context: Private classes
context: Private classes
context-id: Public structures
correct-type: Public conditions
count: Public conditions
ctx-thread: Public conditions
ctx-thread: Public conditions
cubes: Public conditions
cubes-p: Public structures
cull-face: Public structures
current: Public conditions
current-blend-params: Public structures
current-count: Public conditions
current-dim: Public conditions
current-draw-buffers-len: Public structures
current-draw-buffers-ptr: Public structures
current-prog-id: Public structures
current-program: Public structures
current-scissor-viewports: Public structures
current-sizes: Public conditions
current-stencil-mask-back: Public structures
current-stencil-mask-front: Public structures
current-stencil-params-back: Public structures
current-stencil-params-front: Public structures
current-surface: Public conditions
current-surface: Public structures
current-tfs: Public structures
current-viewport: Public structures

D
data: Public conditions
data: Public structures
data: Public structures
data: Private conditions
data: Private conditions
decl: Public conditions
declarations: Private classes
declarations: Private classes
default-framebuffer: Public structures
default-viewport: Public structures
depth-array: Public structures
depth-clamp: Public structures
depth-func: Public structures
depth-mask: Public structures
depth-range: Public structures
designator: Public conditions
designator: Public conditions
designator-choice-pairs: Public conditions
destination-alpha: Public structures
destination-rgb: Public structures
destroy-surface-function: Public classes
diff-tag: Private structures
diff-tag: Private classes
diff-tags: Private classes
dimensions: Public conditions
dimensions: Public conditions
dimensions: Public conditions
dimensions: Public conditions
dimensions: Public structures
dimensions: Public structures
dimensions: Public structures
dimensions: Private conditions
dimensions: Private classes
dir: Private conditions
doc-string: Private classes
doc-string: Private classes
draw-buffer-map: Public structures
draw-fbo-binding: Public structures
draw-mode-val: Public structures

E
elem: Public conditions
element-byte-size: Public structures
element-from-foreign: Public structures
element-layout: Private classes
element-pixel-format: Public structures
element-pixel-format: Public structures
element-to-foreign: Public structures
element-type: Public conditions
element-type: Public conditions
element-type: Public conditions
element-type: Public conditions
element-type: Public structures
element-type: Public structures
element-type: Private conditions
element-type: Private conditions
element-type: Private classes
empty-params: Public structures
enable-rasterizer: Private structures
enum: Public structures
enum: Public structures
enum: Public structures
enum: Public structures
enum: Public structures
enum: Public structures
enum: Public structures
enum: Public structures
env: Public conditions
equivalent-inargs: Private classes
equivalent-uniforms: Private classes
expects-depth: Public structures
expects-mipmap: Public structures
extra-info-string: Public conditions

F
face-num: Public structures
fbo: Public conditions
fbo: Public conditions
fbo: Public structures
fbos: Public structures
fixed-sample-locations-p: Public structures
fixed-sample-locations-p: Public structures
for: Public conditions
foreign-name: Private classes
form: Public conditions
form: Public conditions
fragment-stage: Private classes
free: Public structures
front-face: Public structures
full: Public conditions
fullscreen: Private classes
func: Public conditions
func-p: Public conditions
func-spec: Private classes
func-stage: Public conditions

G
geometry-stage: Private classes
gfun-name: Public conditions
gfunc-name: Public conditions
gl-context: Public structures
gl-context: Private structures
gl-version-float: Public structures
glsl-body: Public conditions
glsl-string: Private classes
glsl-string: Private classes
glsl-string: Private classes
glsl-string: Private classes
glsl-string: Private classes
glsl-string: Private classes
glsl-string: Private classes
glsl-string: Private classes
glsl-string: Private classes
glsl-string: Private classes
glsl-string: Private classes
glsl-string: Private classes
gpu-arrays: Public structures
groups: Public conditions

H
handle: Public classes
height: Private classes
hidden: Private classes

I
id: Public structures
id: Public structures
id: Public structures
id: Public structures
id: Public structures
id: Public structures
id: Public structures
id: Public structures
id: Public structures
id-box: Public structures
image-format: Public structures
image-format: Public structures
image-format: Public structures
implicit-uniform-upload-func: Private structures
in-arg-types: Private classes
in-args: Private classes
in-args: Private classes
incorrect-type: Public conditions
incorrectly-typed-args: Public conditions
index: Public structures
index: Public structures
index: Private classes
indices: Private conditions
init-function: Public classes
init-thread: Public conditions
init-thread: Public conditions
initial-contents: Public conditions
initial-contents: Public conditions
instance-count: Public structures
int: Private structures
invalid: Public conditions
invalid: Public conditions
invalid-arg: Public conditions
invalid-forms: Public conditions
invalid-options: Public conditions
invalid-pair: Public conditions
invalid-syntax: Public conditions
is-default: Public structures
issue: Public conditions
issue: Public conditions

K
keys: Public conditions
keys: Public conditions
kind: Public conditions
kind: Public conditions

L
last-sampler-id: Public structures
layer-count: Public conditions
layer-count: Public structures
layer-count: Public structures
layer-num: Public structures
layout: Public conditions
layout: Public conditions
layout: Public conditions
layout: Public conditions
layout: Public conditions
layout: Public conditions
layout: Public conditions
layout: Private classes
layout: Private classes
layouts: Public conditions
layouts: Public conditions
legacy-gl-version: Private classes
length: Public structures
let-forms: Private classes
level-num: Public structures
local-arg-name: Private classes
lod-bias: Public structures

M
machine-unit-size: Private classes
magnify-filter: Public structures
make-context-current-function: Public classes
make-context-function: Public classes
make-gl-context-shared-with-current-context-function: Public classes
make-surface-function: Public classes
managed: Public structures
mask: Public structures
max: Public conditions
max-draw-buffer-count: Public structures
max-lod: Public structures
members: Private classes
min-lod: Public structures
minify-filter: Public structures
mipmap: Public conditions
mipmap-levels: Public structures
missing: Public conditions
missing-dependencies: Private classes
missing-func-names: Public conditions
mode-alpha: Public structures
mode-rgb: Public structures
multisample: Public conditions
multisample-p: Public structures
mutable-p: Public structures

N
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Public conditions
name: Private classes
name: Private classes
name: Private classes
name: Private classes
name: Private classes
name: Private classes
name: Private classes
new-dim: Public conditions
no-frame: Private classes
normalize: Public structures
normalized: Private classes

O
obj: Public structures
offset-in-bytes-into-buffer: Public structures
on-stencil-pass-depth-test-fail: Public structures
on-stencil-pass-depth-test-pass: Public structures
on-stencil-test-fail: Public structures
origin-x: Public structures
origin-y: Public structures
owned-p: Public structures
owns-array: Public structures
owns-gpu-array: Public structures
owns-gpu-array: Public structures

P
pack-alignment: Public structures
parent-ffi-name: Private classes
partial-stages: Public conditions
patch-length: Public structures
pending-arrays: Public structures
pipeline: Private structures
pipeline-name: Public conditions
pipeline-name: Public conditions
pipeline-name: Public conditions
pipeline-name: Public conditions
pipeline-name: Public conditions
pipeline-name: Public conditions
pipeline-name: Public conditions
pixel-format: Public conditions
pixel-format: Public conditions
pline-prim: Public conditions
pointer: Public structures
pointer: Private structures
pointer-arg: Private classes
possible-choices: Public conditions
primitive: Public structures
primitive-group-id: Public structures
prog-ids: Private structures
prog-ids: Private classes
proposed: Public conditions
proposed: Public conditions
provided-dimensions: Public conditions

Q
query: Public conditions
query: Public conditions
query: Public conditions
query: Public conditions

R
read-fbo-binding: Public structures
reader: Private classes
recompile-func: Private classes
recompile-state: Private classes
recompiler: Private structures
rectangle: Public conditions
register-event-callback-function: Public classes
requested-gl-version: Public structures
requested-gl-version: Private structures
requested-sizes: Public conditions
required-type: Public conditions
resizable: Private classes
resolution: Public structures
resolution-x: Public structures
resolution-y: Public structures
reversed: Public structures
row-alignment: Public structures
row-alignment: Public structures

S
sampler: Public conditions
samples: Public structures
samples: Public structures
set-surface-fullscreen-function: Public classes
set-surface-size-function: Public classes
set-surface-title-function: Public classes
shared: Public structures
shared: Private structures
shared: Private classes
shared: Private classes
shared-count: Public conditions
shared-p: Public structures
shutdown-function: Public classes
signature: Private classes
signature: Private classes
signature: Private classes
signature: Private classes
signature: Private classes
signature: Private classes
signature: Private classes
signature: Private classes
signature: Private classes
signature: Private classes
signature: Private classes
signature: Private classes
size: Public conditions
size-x: Public structures
size-y: Public structures
size-z: Public structures
sizes: Public conditions
sizes: Public structures
sizes: Public structures
Slot, %index-type-enum: Public structures
Slot, %index-type-size: Public structures
Slot, %primitive: Public structures
Slot, %start: Public structures
Slot, %start-byte: Public structures
Slot, access-style: Public structures
Slot, active-p: Public structures
Slot, actual-uniforms: Private classes
Slot, aligned-offset: Private classes
Slot, allocated-p: Public structures
Slot, alternatives: Public conditions
Slot, always-uploadp: Private classes
Slot, anisotropy: Public structures
Slot, arg: Public conditions
Slot, arg-name: Private classes
Slot, arg-names: Public conditions
Slot, args: Public conditions
Slot, args: Public conditions
Slot, args: Public conditions
Slot, args: Public conditions
Slot, args: Public conditions
Slot, args: Public conditions
Slot, args: Public conditions
Slot, args: Public conditions
Slot, args: Private conditions
Slot, array: Public conditions
Slot, array: Public structures
Slot, array-of-bound-gpu-buffers: Public structures
Slot, array-of-bound-queries: Public structures
Slot, array-of-bound-samplers: Public structures
Slot, array-of-gpu-buffers: Public structures
Slot, array-of-ssbo-binding-ranges: Public structures
Slot, array-of-ssbo-bindings-buffer-ids: Public structures
Slot, array-of-textures: Public structures
Slot, array-of-transform-feedback-bindings-buffer-ids: Public structures
Slot, array-of-ubo-binding-ranges: Public structures
Slot, array-of-ubo-bindings-buffer-ids: Public structures
Slot, array-type: Public conditions
Slot, arrays: Public structures
Slot, arrays: Public structures
Slot, asset-name: Public conditions
Slot, attachment: Public conditions
Slot, attachment-count: Public structures
Slot, backing-array: Public structures
Slot, base-alignment: Private classes
Slot, base-dimensions: Public structures
Slot, base-offset: Private classes
Slot, base-vertex: Public structures
Slot, blend: Public structures
Slot, blending-params: Public structures
Slot, body: Private classes
Slot, body: Private classes
Slot, body: Private classes
Slot, boop-x: Private structures
Slot, boop-y: Private structures
Slot, border-color: Public structures
Slot, bound: Public structures
Slot, bound-thread: Public structures
Slot, bparams: Public structures
Slot, buffer: Public structures
Slot, buffer-storage: Public conditions
Slot, byte-size: Public structures
Slot, byte-size: Public structures
Slot, c-arr: Private conditions
Slot, c-arr-dimensions: Public conditions
Slot, cache-id: Public structures
Slot, cache-id: Public structures
Slot, cache-id: Public structures
Slot, cache-id: Public structures
Slot, cache-id: Public structures
Slot, cache-id: Public structures
Slot, cache-id: Public structures
Slot, cache-id: Public structures
Slot, cache-id: Public structures
Slot, cache-id: Public structures
Slot, cached-compile-results: Private classes
Slot, cached-compile-results: Private classes
Slot, callee: Public conditions
Slot, choices: Public conditions
Slot, choices: Public conditions
Slot, clauses: Public conditions
Slot, clauses: Public conditions
Slot, cleanup: Private classes
Slot, clear-color: Public structures
Slot, clear-mask: Public structures
Slot, color-arrays: Public structures
Slot, color-arrays-fill-pointer: Public structures
Slot, color-masks: Public structures
Slot, comp-length: Public structures
Slot, compare: Public structures
Slot, components: Public structures
Slot, compute-stage: Private classes
Slot, constant-names: Public conditions
Slot, consumed: Private structures
Slot, context: Public conditions
Slot, context: Public conditions
Slot, context: Public conditions
Slot, context: Public conditions
Slot, context: Private classes
Slot, context: Private classes
Slot, context: Private classes
Slot, context-id: Public structures
Slot, correct-type: Public conditions
Slot, count: Public conditions
Slot, ctx-thread: Public conditions
Slot, ctx-thread: Public conditions
Slot, cubes: Public conditions
Slot, cubes-p: Public structures
Slot, cull-face: Public structures
Slot, current: Public conditions
Slot, current-blend-params: Public structures
Slot, current-count: Public conditions
Slot, current-dim: Public conditions
Slot, current-draw-buffers-len: Public structures
Slot, current-draw-buffers-ptr: Public structures
Slot, current-prog-id: Public structures
Slot, current-program: Public structures
Slot, current-scissor-viewports: Public structures
Slot, current-sizes: Public conditions
Slot, current-stencil-mask-back: Public structures
Slot, current-stencil-mask-front: Public structures
Slot, current-stencil-params-back: Public structures
Slot, current-stencil-params-front: Public structures
Slot, current-surface: Public conditions
Slot, current-surface: Public structures
Slot, current-tfs: Public structures
Slot, current-viewport: Public structures
Slot, data: Public conditions
Slot, data: Public structures
Slot, data: Public structures
Slot, data: Private conditions
Slot, data: Private conditions
Slot, decl: Public conditions
Slot, declarations: Private classes
Slot, declarations: Private classes
Slot, default-framebuffer: Public structures
Slot, default-viewport: Public structures
Slot, depth-array: Public structures
Slot, depth-clamp: Public structures
Slot, depth-func: Public structures
Slot, depth-mask: Public structures
Slot, depth-range: Public structures
Slot, designator: Public conditions
Slot, designator: Public conditions
Slot, designator-choice-pairs: Public conditions
Slot, destination-alpha: Public structures
Slot, destination-rgb: Public structures
Slot, destroy-surface-function: Public classes
Slot, diff-tag: Private structures
Slot, diff-tag: Private classes
Slot, diff-tags: Private classes
Slot, dimensions: Public conditions
Slot, dimensions: Public conditions
Slot, dimensions: Public conditions
Slot, dimensions: Public conditions
Slot, dimensions: Public structures
Slot, dimensions: Public structures
Slot, dimensions: Public structures
Slot, dimensions: Private conditions
Slot, dimensions: Private classes
Slot, dir: Private conditions
Slot, doc-string: Private classes
Slot, doc-string: Private classes
Slot, draw-buffer-map: Public structures
Slot, draw-fbo-binding: Public structures
Slot, draw-mode-val: Public structures
Slot, elem: Public conditions
Slot, element-byte-size: Public structures
Slot, element-from-foreign: Public structures
Slot, element-layout: Private classes
Slot, element-pixel-format: Public structures
Slot, element-pixel-format: Public structures
Slot, element-to-foreign: Public structures
Slot, element-type: Public conditions
Slot, element-type: Public conditions
Slot, element-type: Public conditions
Slot, element-type: Public conditions
Slot, element-type: Public structures
Slot, element-type: Public structures
Slot, element-type: Private conditions
Slot, element-type: Private conditions
Slot, element-type: Private classes
Slot, empty-params: Public structures
Slot, enable-rasterizer: Private structures
Slot, enum: Public structures
Slot, enum: Public structures
Slot, enum: Public structures
Slot, enum: Public structures
Slot, enum: Public structures
Slot, enum: Public structures
Slot, enum: Public structures
Slot, enum: Public structures
Slot, env: Public conditions
Slot, equivalent-inargs: Private classes
Slot, equivalent-uniforms: Private classes
Slot, expects-depth: Public structures
Slot, expects-mipmap: Public structures
Slot, extra-info-string: Public conditions
Slot, face-num: Public structures
Slot, fbo: Public conditions
Slot, fbo: Public conditions
Slot, fbo: Public structures
Slot, fbos: Public structures
Slot, fixed-sample-locations-p: Public structures
Slot, fixed-sample-locations-p: Public structures
Slot, for: Public conditions
Slot, foreign-name: Private classes
Slot, form: Public conditions
Slot, form: Public conditions
Slot, fragment-stage: Private classes
Slot, free: Public structures
Slot, front-face: Public structures
Slot, full: Public conditions
Slot, fullscreen: Private classes
Slot, func: Public conditions
Slot, func-p: Public conditions
Slot, func-spec: Private classes
Slot, func-stage: Public conditions
Slot, geometry-stage: Private classes
Slot, gfun-name: Public conditions
Slot, gfunc-name: Public conditions
Slot, gl-context: Public structures
Slot, gl-context: Private structures
Slot, gl-version-float: Public structures
Slot, glsl-body: Public conditions
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, glsl-string: Private classes
Slot, gpu-arrays: Public structures
Slot, groups: Public conditions
Slot, handle: Public classes
Slot, height: Private classes
Slot, hidden: Private classes
Slot, id: Public structures
Slot, id: Public structures
Slot, id: Public structures
Slot, id: Public structures
Slot, id: Public structures
Slot, id: Public structures
Slot, id: Public structures
Slot, id: Public structures
Slot, id: Public structures
Slot, id-box: Public structures
Slot, image-format: Public structures
Slot, image-format: Public structures
Slot, image-format: Public structures
Slot, implicit-uniform-upload-func: Private structures
Slot, in-arg-types: Private classes
Slot, in-args: Private classes
Slot, in-args: Private classes
Slot, incorrect-type: Public conditions
Slot, incorrectly-typed-args: Public conditions
Slot, index: Public structures
Slot, index: Public structures
Slot, index: Private classes
Slot, indices: Private conditions
Slot, init-function: Public classes
Slot, init-thread: Public conditions
Slot, init-thread: Public conditions
Slot, initial-contents: Public conditions
Slot, initial-contents: Public conditions
Slot, instance-count: Public structures
Slot, int: Private structures
Slot, invalid: Public conditions
Slot, invalid: Public conditions
Slot, invalid-arg: Public conditions
Slot, invalid-forms: Public conditions
Slot, invalid-options: Public conditions
Slot, invalid-pair: Public conditions
Slot, invalid-syntax: Public conditions
Slot, is-default: Public structures
Slot, issue: Public conditions
Slot, issue: Public conditions
Slot, keys: Public conditions
Slot, keys: Public conditions
Slot, kind: Public conditions
Slot, kind: Public conditions
Slot, last-sampler-id: Public structures
Slot, layer-count: Public conditions
Slot, layer-count: Public structures
Slot, layer-count: Public structures
Slot, layer-num: Public structures
Slot, layout: Public conditions
Slot, layout: Public conditions
Slot, layout: Public conditions
Slot, layout: Public conditions
Slot, layout: Public conditions
Slot, layout: Public conditions
Slot, layout: Public conditions
Slot, layout: Private classes
Slot, layout: Private classes
Slot, layouts: Public conditions
Slot, layouts: Public conditions
Slot, legacy-gl-version: Private classes
Slot, length: Public structures
Slot, let-forms: Private classes
Slot, level-num: Public structures
Slot, local-arg-name: Private classes
Slot, lod-bias: Public structures
Slot, machine-unit-size: Private classes
Slot, magnify-filter: Public structures
Slot, make-context-current-function: Public classes
Slot, make-context-function: Public classes
Slot, make-gl-context-shared-with-current-context-function: Public classes
Slot, make-surface-function: Public classes
Slot, managed: Public structures
Slot, mask: Public structures
Slot, max: Public conditions
Slot, max-draw-buffer-count: Public structures
Slot, max-lod: Public structures
Slot, members: Private classes
Slot, min-lod: Public structures
Slot, minify-filter: Public structures
Slot, mipmap: Public conditions
Slot, mipmap-levels: Public structures
Slot, missing: Public conditions
Slot, missing-dependencies: Private classes
Slot, missing-func-names: Public conditions
Slot, mode-alpha: Public structures
Slot, mode-rgb: Public structures
Slot, multisample: Public conditions
Slot, multisample-p: Public structures
Slot, mutable-p: Public structures
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Public conditions
Slot, name: Private classes
Slot, name: Private classes
Slot, name: Private classes
Slot, name: Private classes
Slot, name: Private classes
Slot, name: Private classes
Slot, name: Private classes
Slot, new-dim: Public conditions
Slot, no-frame: Private classes
Slot, normalize: Public structures
Slot, normalized: Private classes
Slot, obj: Public structures
Slot, offset-in-bytes-into-buffer: Public structures
Slot, on-stencil-pass-depth-test-fail: Public structures
Slot, on-stencil-pass-depth-test-pass: Public structures
Slot, on-stencil-test-fail: Public structures
Slot, origin-x: Public structures
Slot, origin-y: Public structures
Slot, owned-p: Public structures
Slot, owns-array: Public structures
Slot, owns-gpu-array: Public structures
Slot, owns-gpu-array: Public structures
Slot, pack-alignment: Public structures
Slot, parent-ffi-name: Private classes
Slot, partial-stages: Public conditions
Slot, patch-length: Public structures
Slot, pending-arrays: Public structures
Slot, pipeline: Private structures
Slot, pipeline-name: Public conditions
Slot, pipeline-name: Public conditions
Slot, pipeline-name: Public conditions
Slot, pipeline-name: Public conditions
Slot, pipeline-name: Public conditions
Slot, pipeline-name: Public conditions
Slot, pipeline-name: Public conditions
Slot, pixel-format: Public conditions
Slot, pixel-format: Public conditions
Slot, pline-prim: Public conditions
Slot, pointer: Public structures
Slot, pointer: Private structures
Slot, pointer-arg: Private classes
Slot, possible-choices: Public conditions
Slot, primitive: Public structures
Slot, primitive-group-id: Public structures
Slot, prog-ids: Private structures
Slot, prog-ids: Private classes
Slot, proposed: Public conditions
Slot, proposed: Public conditions
Slot, provided-dimensions: Public conditions
Slot, query: Public conditions
Slot, query: Public conditions
Slot, query: Public conditions
Slot, query: Public conditions
Slot, read-fbo-binding: Public structures
Slot, reader: Private classes
Slot, recompile-func: Private classes
Slot, recompile-state: Private classes
Slot, recompiler: Private structures
Slot, rectangle: Public conditions
Slot, register-event-callback-function: Public classes
Slot, requested-gl-version: Public structures
Slot, requested-gl-version: Private structures
Slot, requested-sizes: Public conditions
Slot, required-type: Public conditions
Slot, resizable: Private classes
Slot, resolution: Public structures
Slot, resolution-x: Public structures
Slot, resolution-y: Public structures
Slot, reversed: Public structures
Slot, row-alignment: Public structures
Slot, row-alignment: Public structures
Slot, sampler: Public conditions
Slot, samples: Public structures
Slot, samples: Public structures
Slot, set-surface-fullscreen-function: Public classes
Slot, set-surface-size-function: Public classes
Slot, set-surface-title-function: Public classes
Slot, shared: Public structures
Slot, shared: Private structures
Slot, shared: Private classes
Slot, shared: Private classes
Slot, shared-count: Public conditions
Slot, shared-p: Public structures
Slot, shutdown-function: Public classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, signature: Private classes
Slot, size: Public conditions
Slot, size-x: Public structures
Slot, size-y: Public structures
Slot, size-z: Public structures
Slot, sizes: Public conditions
Slot, sizes: Public structures
Slot, sizes: Public structures
Slot, slots: Public conditions
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, slots: Private classes
Slot, source-alpha: Public structures
Slot, source-rgb: Public structures
Slot, space: Public conditions
Slot, spec: Private structures
Slot, specifier: Public conditions
Slot, stage: Public conditions
Slot, stage: Public conditions
Slot, stage: Public structures
Slot, stages: Public conditions
Slot, stages: Public conditions
Slot, static-p: Public structures
Slot, stencil-array: Public structures
Slot, step-function: Public classes
Slot, stream-prim: Public conditions
Slot, struct-element-typep: Public structures
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, superclass: Private classes
Slot, supports-multiple-contexts-p: Public classes
Slot, supports-multiple-surfaces-p: Public classes
Slot, supposed-type: Public conditions
Slot, surface: Private structures
Slot, surface-fullscreen-p-function: Public classes
Slot, surface-size-function: Public classes
Slot, surface-title-function: Public classes
Slot, surfaces: Public structures
Slot, surfaces: Private structures
Slot, swap-function: Public classes
Slot, target: Public conditions
Slot, target: Public conditions
Slot, tessellation-control-stage: Private classes
Slot, tessellation-evaluation-stage: Private classes
Slot, test: Public structures
Slot, texture: Public structures
Slot, texture: Public structures
Slot, texture-type: Public structures
Slot, tfs: Public conditions
Slot, tfs-array-count: Private structures
Slot, tfs-count: Public conditions
Slot, tfs-primitive: Private structures
Slot, thing: Public conditions
Slot, thread: Public conditions
Slot, thunk: Private structures
Slot, title: Private classes
Slot, total-size: Public structures
Slot, type: Public conditions
Slot, type: Public conditions
Slot, type: Public structures
Slot, type: Public structures
Slot, type: Public structures
Slot, type: Private classes
Slot, type: Private classes
Slot, type-name: Public conditions
Slot, type-name: Public conditions
Slot, type-name: Public conditions
Slot, type-name: Public conditions
Slot, type-name: Public conditions
Slot, type-name: Public conditions
Slot, type-name: Public conditions
Slot, type-name: Public conditions
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, type-name: Private classes
Slot, types: Public conditions
Slot, uint: Private structures
Slot, uniform-int-ids: Private structures
Slot, uniform-uint-ids: Private structures
Slot, uniforms: Private classes
Slot, uniforms: Private classes
Slot, uninitialized-resources: Public structures
Slot, unknown-key-arguments: Public conditions
Slot, unpack-alignment: Public structures
Slot, uploaders: Private classes
Slot, uses-method-p: Private classes
Slot, valid-forms: Public conditions
Slot, valid-options: Public conditions
Slot, valid-specifiers: Public conditions
Slot, value: Public conditions
Slot, value: Public structures
Slot, vao: Public structures
Slot, vao-binding-id: Public structures
Slot, varjo-type: Private classes
Slot, version: Private conditions
Slot, version-float: Public classes
Slot, version-major: Public classes
Slot, version-minor: Public classes
Slot, versions: Public structures
Slot, vertex-stage: Private classes
Slot, vertex-stage: Private classes
Slot, viewport: Public structures
Slot, viewport: Public structures
Slot, waiting-on: Private structures
Slot, width: Private classes
Slot, wrap: Public structures
Slot, writer: Private classes
slots: Public conditions
slots: Private classes
slots: Private classes
slots: Private classes
slots: Private classes
slots: Private classes
slots: Private classes
slots: Private classes
slots: Private classes
slots: Private classes
slots: Private classes
slots: Private classes
slots: Private classes
slots: Private classes
source-alpha: Public structures
source-rgb: Public structures
space: Public conditions
spec: Private structures
Special Variable, *active-listeners*: Private special variables
Special Variable, *anisotropy-available*: Private special variables
Special Variable, *api-0-context-singleton*: Private special variables
Special Variable, *api-0-make-context-called*: Private special variables
Special Variable, *api-0-make-window-called*: Private special variables
Special Variable, *api-0-window-singleton*: Private special variables
Special Variable, *bptc-compressed-formats*: Public special variables
Special Variable, *cache-last-compile-result*: Private special variables
Special Variable, *cepl-context*: Private special variables
Special Variable, *cepl-release-mode*: Private special variables
Special Variable, *color-renderable-formats*: Public special variables
Special Variable, *contexts*: Private special variables
Special Variable, *contexts-lock*: Private special variables
Special Variable, *current-host*: Private special variables
Special Variable, *declared-host*: Private special variables
Special Variable, *default-sampler-id-box*: Private special variables
Special Variable, *dependent-gpu-functions*: Private special variables
Special Variable, *dependent-gpu-functions-lock*: Private special variables
Special Variable, *depth-formats*: Public special variables
Special Variable, *depth-stencil-formats*: Public special variables
Special Variable, *extra-primitive-types*: Public special variables
Special Variable, *fake-sampler-id*: Private special variables
Special Variable, *fake-sampler-id-lock*: Private special variables
Special Variable, *floating-point-formats*: Public special variables
Special Variable, *free-context-ids*: Private special variables
Special Variable, *free-context-ids-lock*: Private special variables
Special Variable, *freed-ssbo-id*: Private special variables
Special Variable, *freed-ubo-id*: Private special variables
Special Variable, *get-gpu-lambda-state*: Private special variables
Special Variable, *gpu-func-diff-tag*: Private special variables
Special Variable, *gpu-func-specs*: Private special variables
Special Variable, *gpu-func-specs-lock*: Private special variables
Special Variable, *gpu-pipeline-specs*: Private special variables
Special Variable, *gpu-pipeline-specs-lock*: Private special variables
Special Variable, *image-formats*: Public special variables
Special Variable, *immutable-available*: Public special variables
Special Variable, *init-pipeline-lock*: Private special variables
Special Variable, *lifecycle-state*: Private special variables
Special Variable, *lowest-unused-ssbo-id*: Private special variables
Special Variable, *lowest-unused-ubo-id*: Private special variables
Special Variable, *map-of-pipeline-names-to-gl-ids*: Private special variables
Special Variable, *map-of-pipeline-names-to-gl-ids-lock*: Private special variables
Special Variable, *pipeline-body-context-var*: Private special variables
Special Variable, *post-context-init*: Private special variables
Special Variable, *primary-context*: Private special variables
Special Variable, *print-gpu-function-subscriptions*: Private special variables
Special Variable, *red/green-compressed-formats*: Public special variables
Special Variable, *regular-color-formats*: Public special variables
Special Variable, *s3tc/dxt-compessed-formats*: Public special variables
Special Variable, *samplers-available*: Private special variables
Special Variable, *shutting-down-listeners*: Private special variables
Special Variable, *signed-integral-formats*: Public special variables
Special Variable, *signed-normalized-integer-formats*: Public special variables
Special Variable, *special-color-formats*: Public special variables
Special Variable, *srgb-color-formats*: Public special variables
Special Variable, *ssbo-id-lock*: Private special variables
Special Variable, *standard-declarations*: Private special variables
Special Variable, *stencil-formats*: Public special variables
Special Variable, *struct-slot-defs*: Private special variables
Special Variable, *suppress-upload-message*: Private special variables
Special Variable, *suspended-listeners*: Private special variables
Special Variable, *template-dir*: Private special variables
Special Variable, *ubo-id-lock*: Private special variables
Special Variable, *unsigned-integral-formats*: Public special variables
Special Variable, *unsigned-normalized-integer-formats*: Public special variables
Special Variable, *valid-image-formats-for-buffer-backed-texture*: Public special variables
Special Variable, *valid-layout-specifiers*: Private special variables
Special Variable, *warn-when-cant-test-compile*: Private special variables
Special Variable, +null-att+: Private special variables
Special Variable, +null-buffer-backed-gpu-array+: Public special variables
Special Variable, +null-fbo+: Public special variables
Special Variable, +null-gpu-buffer+: Public special variables
Special Variable, +null-texture+: Public special variables
Special Variable, +null-texture-backed-gpu-array+: Public special variables
Special Variable, +null-vao+: Public special variables
Special Variable, +uninitialized-buffer-array+: Private special variables
specifier: Public conditions
stage: Public conditions
stage: Public conditions
stage: Public structures
stages: Public conditions
stages: Public conditions
static-p: Public structures
stencil-array: Public structures
step-function: Public classes
stream-prim: Public conditions
struct-element-typep: Public structures
superclass: Private classes
superclass: Private classes
superclass: Private classes
superclass: Private classes
superclass: Private classes
superclass: Private classes
superclass: Private classes
superclass: Private classes
superclass: Private classes
superclass: Private classes
superclass: Private classes
superclass: Private classes
supports-multiple-contexts-p: Public classes
supports-multiple-surfaces-p: Public classes
supposed-type: Public conditions
surface: Private structures
surface-fullscreen-p-function: Public classes
surface-size-function: Public classes
surface-title-function: Public classes
surfaces: Public structures
surfaces: Private structures
swap-function: Public classes

T
target: Public conditions
target: Public conditions
tessellation-control-stage: Private classes
tessellation-evaluation-stage: Private classes
test: Public structures
texture: Public structures
texture: Public structures
texture-type: Public structures
tfs: Public conditions
tfs-array-count: Private structures
tfs-count: Public conditions
tfs-primitive: Private structures
thing: Public conditions
thread: Public conditions
thunk: Private structures
title: Private classes
total-size: Public structures
type: Public conditions
type: Public conditions
type: Public structures
type: Public structures
type: Public structures
type: Private classes
type: Private classes
type-name: Public conditions
type-name: Public conditions
type-name: Public conditions
type-name: Public conditions
type-name: Public conditions
type-name: Public conditions
type-name: Public conditions
type-name: Public conditions
type-name: Private classes
type-name: Private classes
type-name: Private classes
type-name: Private classes
type-name: Private classes
type-name: Private classes
type-name: Private classes
type-name: Private classes
type-name: Private classes
type-name: Private classes
type-name: Private classes
type-name: Private classes
types: Public conditions

U
uint: Private structures
uniform-int-ids: Private structures
uniform-uint-ids: Private structures
uniforms: Private classes
uniforms: Private classes
uninitialized-resources: Public structures
unknown-key-arguments: Public conditions
unpack-alignment: Public structures
uploaders: Private classes
uses-method-p: Private classes

V
valid-forms: Public conditions
valid-options: Public conditions
valid-specifiers: Public conditions
value: Public conditions
value: Public structures
vao: Public structures
vao-binding-id: Public structures
varjo-type: Private classes
version: Private conditions
version-float: Public classes
version-major: Public classes
version-minor: Public classes
versions: Public structures
vertex-stage: Private classes
vertex-stage: Private classes
viewport: Public structures
viewport: Public structures

W
waiting-on: Private structures
width: Private classes
wrap: Public structures
writer: Private classes


A.4 Data types

Jump to:   %  
A   B   C   D   E   F   G   H   I   L   M   N   O   P   Q   R   S   T   U   V  
Index Entry  Section

%
%cepl.types: The %cepl․types package

A
adjust-gpu-array-mismatched-dimensions: Public conditions
adjust-gpu-array-shared-buffer: Public conditions
another-query-is-active: Public conditions
any-samples-passed-conservative-query: Public structures
any-samples-passed-query: Public structures
api-0: Private classes
api-1: Public classes
api-2: Public classes
array-index: Public types
arrays-indirect-command: Public structures
assigner: Private classes
assigner-let-form: Private classes
att: Public structures
attachment-name: Public types
attachment-num: Public types
attachment-viewport-empty-fbo: Public conditions
attachments-with-different-sizes: Public conditions

B
bad-c-array-element: Public conditions
bad-type-for-buffer-stream-data: Public conditions
bake-invalid-pipeling-arg: Public conditions
bake-invalid-uniform-name: Public conditions
bake-uniform-invalid-values: Public conditions
base-gstruct-wrapper: Private structures
blending-params: Public structures
boop6: Private structures
buffer-backed-texture-establish-image-format: Public conditions
buffer-backed-texture-invalid-args: Public conditions
buffer-backed-texture-invalid-image-format: Public conditions
buffer-backed-texture-invalid-samplers: Public conditions
buffer-stream: Public structures
buffer-stream-has-invalid-primitive-for-stream: Public conditions
buffer-texture: Public structures
build/build.lisp: The cepl․build/build/build․lisp file
build/package.lisp: The cepl․build/build/package․lisp file

C
c-array: Public structures
c-array-4d-limit: Private conditions
c-array-4d-limit-aref: Private conditions
c-array-index: Public types
c-array-total-size-type-error: Public conditions
cannot-extract-stream-length-from-layouts: Public conditions
cannot-keep-data-when-uploading: Public conditions
cepl: The cepl system
cepl: The cepl package
cepl-context: Public structures
cepl-host-api: Private classes
cepl-struct-definition: Private classes
cepl-utils: The cepl-utils package
cepl.asd: The cepl/cepl․asd file
cepl.blending: The cepl․blending package
cepl.build: The cepl․build system
cepl.build: The cepl․build package
cepl.build.asd: The cepl․build/cepl․build․asd file
cepl.c-arrays: The cepl․c-arrays package
cepl.compute: The cepl․compute package
cepl.context: The cepl․context package
cepl.defn: The cepl․defn package
cepl.docs: The cepl․docs package
cepl.documentation-functions: The cepl․documentation-functions package
cepl.errors: The cepl․errors package
cepl.fbos: The cepl․fbos package
cepl.gpu-arrays: The cepl․gpu-arrays package
cepl.gpu-arrays.buffer-backed: The cepl․gpu-arrays․buffer-backed package
cepl.gpu-arrays.texture-backed: The cepl․gpu-arrays․texture-backed package
cepl.gpu-buffers: The cepl․gpu-buffers package
cepl.hidden: The cepl․hidden package
cepl.host: The cepl․host package
cepl.image-formats: The cepl․image-formats package
cepl.internals: The cepl․internals package
cepl.lifecycle: The cepl․lifecycle package
cepl.measurements: The cepl․measurements package
cepl.memory: The cepl․memory package
cepl.pipelines: The cepl․pipelines package
cepl.pipelines.arrays-indirect-command.cffi-ct-type: Private classes
cepl.pipelines.arrays-indirect-command.foreign-tclass: Private classes
cepl.pipelines.elements-indirect-command.cffi-ct-type: Private classes
cepl.pipelines.elements-indirect-command.foreign-tclass: Private classes
cepl.pixel-formats: The cepl․pixel-formats package
cepl.queries: The cepl․queries package
cepl.render-buffers: The cepl․render-buffers package
cepl.samplers: The cepl․samplers package
cepl.scissor: The cepl․scissor package
cepl.ssbos: The cepl․ssbos package
cepl.stencil: The cepl․stencil package
cepl.streams: The cepl․streams package
cepl.sync: The cepl․sync package
cepl.textures: The cepl․textures package
cepl.transform-feedback: The cepl․transform-feedback package
cepl.types: The cepl․types package
cepl.types.foreign: The cepl․types․foreign package
cepl.types.predefined: The cepl․types․predefined package
cepl.types.predefined.g-pc.cffi-ct-type: Private classes
cepl.types.predefined.g-pc.foreign-tclass: Private classes
cepl.types.predefined.g-pn.cffi-ct-type: Private classes
cepl.types.predefined.g-pn.foreign-tclass: Private classes
cepl.types.predefined.g-pnb.cffi-ct-type: Private classes
cepl.types.predefined.g-pnb.foreign-tclass: Private classes
cepl.types.predefined.g-pnc.cffi-ct-type: Private classes
cepl.types.predefined.g-pnc.foreign-tclass: Private classes
cepl.types.predefined.g-pncb.cffi-ct-type: Private classes
cepl.types.predefined.g-pncb.foreign-tclass: Private classes
cepl.types.predefined.g-pnt.cffi-ct-type: Private classes
cepl.types.predefined.g-pnt.foreign-tclass: Private classes
cepl.types.predefined.g-pntb.cffi-ct-type: Private classes
cepl.types.predefined.g-pntb.foreign-tclass: Private classes
cepl.types.predefined.g-pntc.cffi-ct-type: Private classes
cepl.types.predefined.g-pntc.foreign-tclass: Private classes
cepl.types.predefined.g-pntcb.cffi-ct-type: Private classes
cepl.types.predefined.g-pntcb.foreign-tclass: Private classes
cepl.types.predefined.g-pt.cffi-ct-type: Private classes
cepl.types.predefined.g-pt.foreign-tclass: Private classes
cepl.ubos: The cepl․ubos package
cepl.vaos: The cepl․vaos package
cepl.viewports: The cepl․viewports package
Class, api-0: Private classes
Class, api-1: Public classes
Class, api-2: Public classes
Class, assigner: Private classes
Class, assigner-let-form: Private classes
Class, cepl-host-api: Private classes
Class, cepl-struct-definition: Private classes
Class, cepl.pipelines.arrays-indirect-command.cffi-ct-type: Private classes
Class, cepl.pipelines.arrays-indirect-command.foreign-tclass: Private classes
Class, cepl.pipelines.elements-indirect-command.cffi-ct-type: Private classes
Class, cepl.pipelines.elements-indirect-command.foreign-tclass: Private classes
Class, cepl.types.predefined.g-pc.cffi-ct-type: Private classes
Class, cepl.types.predefined.g-pc.foreign-tclass: Private classes
Class, cepl.types.predefined.g-pn.cffi-ct-type: Private classes
Class, cepl.types.predefined.g-pn.foreign-tclass: Private classes
Class, cepl.types.predefined.g-pnb.cffi-ct-type: Private classes
Class, cepl.types.predefined.g-pnb.foreign-tclass: Private classes
Class, cepl.types.predefined.g-pnc.cffi-ct-type: Private classes
Class, cepl.types.predefined.g-pnc.foreign-tclass: Private classes
Class, cepl.types.predefined.g-pncb.cffi-ct-type: Private classes
Class, cepl.types.predefined.g-pncb.foreign-tclass: Private classes
Class, cepl.types.predefined.g-pnt.cffi-ct-type: Private classes
Class, cepl.types.predefined.g-pnt.foreign-tclass: Private classes
Class, cepl.types.predefined.g-pntb.cffi-ct-type: Private classes
Class, cepl.types.predefined.g-pntb.foreign-tclass: Private classes
Class, cepl.types.predefined.g-pntc.cffi-ct-type: Private classes
Class, cepl.types.predefined.g-pntc.foreign-tclass: Private classes
Class, cepl.types.predefined.g-pntcb.cffi-ct-type: Private classes
Class, cepl.types.predefined.g-pntcb.foreign-tclass: Private classes
Class, cepl.types.predefined.g-pt.cffi-ct-type: Private classes
Class, cepl.types.predefined.g-pt.foreign-tclass: Private classes
Class, func-key: Private classes
Class, gl-context: Public classes
Class, gl-layout: Private classes
Class, gl-struct-slot: Private classes
Class, glsl-stage-spec: Private classes
Class, gpu-func-spec: Private classes
Class, gpu-lambda-state: Private classes
Class, lambda-pipeline-spec: Private classes
Class, pending-surface: Private classes
Class, pipeline-spec: Private classes
Class, pipeline-spec-base: Private classes
Class, std-140: Public classes
Class, std-430: Public classes
Class, v_arrays-indirect-command: Private classes
Class, v_elements-indirect-command: Private classes
Class, v_g-pc: Private classes
Class, v_g-pn: Private classes
Class, v_g-pnb: Private classes
Class, v_g-pnc: Private classes
Class, v_g-pncb: Private classes
Class, v_g-pnt: Private classes
Class, v_g-pntb: Private classes
Class, v_g-pntc: Private classes
Class, v_g-pntcb: Private classes
Class, v_g-pt: Private classes
clear-buffer-mask: Private types
compile-context: Public structures
compile-g-missing-requested-feature: Public conditions
compute-pipeline-must-be-single-stage: Public conditions
compute-space: Public structures
Condition, adjust-gpu-array-mismatched-dimensions: Public conditions
Condition, adjust-gpu-array-shared-buffer: Public conditions
Condition, another-query-is-active: Public conditions
Condition, attachment-viewport-empty-fbo: Public conditions
Condition, attachments-with-different-sizes: Public conditions
Condition, bad-c-array-element: Public conditions
Condition, bad-type-for-buffer-stream-data: Public conditions
Condition, bake-invalid-pipeling-arg: Public conditions
Condition, bake-invalid-uniform-name: Public conditions
Condition, bake-uniform-invalid-values: Public conditions
Condition, buffer-backed-texture-establish-image-format: Public conditions
Condition, buffer-backed-texture-invalid-args: Public conditions
Condition, buffer-backed-texture-invalid-image-format: Public conditions
Condition, buffer-backed-texture-invalid-samplers: Public conditions
Condition, buffer-stream-has-invalid-primitive-for-stream: Public conditions
Condition, c-array-4d-limit: Private conditions
Condition, c-array-4d-limit-aref: Private conditions
Condition, c-array-total-size-type-error: Public conditions
Condition, cannot-extract-stream-length-from-layouts: Public conditions
Condition, cannot-keep-data-when-uploading: Public conditions
Condition, compile-g-missing-requested-feature: Public conditions
Condition, compute-pipeline-must-be-single-stage: Public conditions
Condition, could-not-layout-type: Public conditions
Condition, delete-multi-func-error: Public conditions
Condition, dispatch-called-outside-of-map-g: Public conditions
Condition, dont-define-space-to-self: Public conditions
Condition, failed-to-test-compile-gpu-func: Public conditions
Condition, fbo-binding-missing: Public conditions
Condition, fbo-missing-outputs: Public conditions
Condition, fbo-target-not-valid-constant: Public conditions
Condition, func-keyed-pipeline-not-found: Public conditions
Condition, functions-in-non-uniform-args: Public conditions
Condition, gfun-invalid-arg-format: Public conditions
Condition, gl-context-initialized-from-incorrect-thread: Public conditions
Condition, gl-version-too-low-for-empty-fbos: Private conditions
Condition, glsl-geom-stage-no-out-layout: Public conditions
Condition, glsl-version-conflict: Public conditions
Condition, glsl-version-conflict-in-gpu-func: Public conditions
Condition, gpu-array-from-buffer-missing-args: Public conditions
Condition, gpu-array-from-id-missing-args: Public conditions
Condition, gpu-func-spec-not-found: Public conditions
Condition, gpu-func-symbol-name: Public conditions
Condition, image-format->lisp-type-failed: Public conditions
Condition, image-format->pixel-format-failed: Public conditions
Condition, inconsistent-struct-layout: Public conditions
Condition, incorrect-number-of-arrays-in-tfs: Public conditions
Condition, index-layout-with-unknown-length: Public conditions
Condition, index-on-buffer-stream-with-no-gpu-arrays: Public conditions
Condition, index-on-buffer-stream-with-no-gpu-layouts: Public conditions
Condition, invalid-args-in-make-tfs: Public conditions
Condition, invalid-attachments-for-empty-fbo: Public conditions
Condition, invalid-compose-gpipe-form: Public conditions
Condition, invalid-context-for-assert-gpipe: Public conditions
Condition, invalid-context-for-assert-options: Public conditions
Condition, invalid-cube-fbo-args: Public conditions
Condition, invalid-data-layout-specifier: Public conditions
Condition, invalid-defpipeline-options: Public conditions
Condition, invalid-empty-fbo-declaration: Public conditions
Condition, invalid-fbo-args: Private conditions
Condition, invalid-gpu-arrays-layout: Public conditions
Condition, invalid-gpu-buffer-layout: Public conditions
Condition, invalid-gpu-function-args: Public conditions
Condition, invalid-inline-glsl-stage-arg-layout: Public conditions
Condition, invalid-keywords-for-shader-gpipe-args: Public conditions
Condition, invalid-layout-for-inargs: Public conditions
Condition, invalid-layout-for-uniform: Public conditions
Condition, invalid-options-for-texture: Public conditions
Condition, invalid-sampler-wrap-value: Public conditions
Condition, invalid-shader-gpipe-form: Public conditions
Condition, invalid-shader-gpipe-stage-keys: Public conditions
Condition, invalid-sizes-in-make-tfs: Public conditions
Condition, invalid-stage-for-single-stage-pipeline: Public conditions
Condition, invalid-stream-layout: Public conditions
Condition, lisp-type->image-format-failed: Public conditions
Condition, make-arrays-layout-count-mismatch: Public conditions
Condition, make-arrays-layout-mismatch: Public conditions
Condition, make-gpu-array-from-c-array-mismatched-dimensions: Public conditions
Condition, make-gpu-buffer-from-id-clashing-keys: Public conditions
Condition, make-project-needs-quickproject: Private conditions
Condition, make-project-no-such-dir: Private conditions
Condition, make-ssbo-from-array-bad-type: Private conditions
Condition, make-tex-array-not-match-type: Public conditions
Condition, make-tex-array-not-match-type2: Public conditions
Condition, make-tex-no-content-no-type: Public conditions
Condition, make-ubo-from-array-bad-type: Private conditions
Condition, mapping-over-partial-pipeline: Public conditions
Condition, max-context-count-reached: Public conditions
Condition, mixed-pipelines-in-with-tb: Public conditions
Condition, multi-func-error: Public conditions
Condition, nested-with-transform-feedback: Public conditions
Condition, no-named-stages: Public conditions
Condition, non-consecutive-feedback-groups: Public conditions
Condition, not-a-gpu-lambda: Public conditions
Condition, not-enough-args-for-implicit-gpipe-stages: Public conditions
Condition, one-stage-non-explicit: Public conditions
Condition, partial-lambda-pipeline: Public conditions
Condition, pipeline-invalid-null-stage: Public conditions
Condition, pipeline-recompile-in-tfb-scope: Public conditions
Condition, pixel-format->image-format-failed: Public conditions
Condition, pixel-format-in-bb-texture: Public conditions
Condition, pull*-g-not-enabled: Public conditions
Condition, pull-g-not-cached: Public conditions
Condition, query-is-active-bug: Public conditions
Condition, query-is-already-active: Public conditions
Condition, query-not-active: Public conditions
Condition, quote-in-buffer-layout: Public conditions
Condition, quote-symbol-found-in-fbo-dimensions: Public conditions
Condition, shader-pipeline-non-null-args: Public conditions
Condition, shared-context-created-from-incorrect-thread: Public conditions
Condition, stage-in-context-only-valid-for-glsl-stages: Public conditions
Condition, stage-not-found: Public conditions
Condition, stage-not-valid-for-function-restriction: Public conditions
Condition, state-restore-limitation-blending: Public conditions
Condition, state-restore-limitation-queries: Private conditions
Condition, state-restore-limitation-transform-feedback: Public conditions
Condition, struct-in-glsl-stage-args: Public conditions
Condition, symbol-stage-designator: Public conditions
Condition, symbol-stage-designators: Public conditions
Condition, texture-dimensions-lequal-zero: Public conditions
Condition, tfs-setf-arrays-whilst-bound: Public conditions
Condition, tried-to-make-context-on-thread-that-already-has-one: Public conditions
Condition, unknown-stage-kind: Public conditions
Condition, unknown-symbols-in-pipeline-context: Public conditions
context-id: Public types
core/blending/blending.lisp: The cepl/core/blending/blending․lisp file
core/blending/docs.lisp: The cepl/core/blending/docs․lisp file
core/c-arrays/aref-c.lisp: The cepl/core/c-arrays/aref-c․lisp file
core/c-arrays/def.lisp: The cepl/core/c-arrays/def․lisp file
core/c-arrays/docs.lisp: The cepl/core/c-arrays/docs․lisp file
core/c-arrays/make.lisp: The cepl/core/c-arrays/make․lisp file
core/c-arrays/map.lisp: The cepl/core/c-arrays/map․lisp file
core/c-arrays/populate.lisp: The cepl/core/c-arrays/populate․lisp file
core/c-arrays/rest.lisp: The cepl/core/c-arrays/rest․lisp file
core/color/color.lisp: The cepl/core/color/color․lisp file
core/compute/compute.lisp: The cepl/core/compute/compute․lisp file
core/context/cepl-context.lisp: The cepl/core/context/cepl-context․lisp file
core/context/delayed-resource-init.lisp: The cepl/core/context/delayed-resource-init․lisp file
core/context/documentation-functions.lisp: The cepl/core/context/documentation-functions․lisp file
core/context/gl-context.lisp: The cepl/core/context/gl-context․lisp file
core/context/known-state-blocks.lisp: The cepl/core/context/known-state-blocks․lisp file
core/context/make.lisp: The cepl/core/context/make․lisp file
core/context/surface.lisp: The cepl/core/context/surface․lisp file
core/context/types.lisp: The cepl/core/context/types․lisp file
core/context/version.lisp: The cepl/core/context/version․lisp file
core/depth/depth.lisp: The cepl/core/depth/depth․lisp file
core/early.lisp: The cepl/core/early․lisp file
core/errors.lisp: The cepl/core/errors․lisp file
core/face/face.lisp: The cepl/core/face/face․lisp file
core/fbos/docs.lisp: The cepl/core/fbos/docs․lisp file
core/fbos/fbo.lisp: The cepl/core/fbos/fbo․lisp file
core/ffi.lisp: The cepl/core/ffi․lisp file
core/gpu-arrays/buffer-backed.lisp: The cepl/core/gpu-arrays/buffer-backed․lisp file
core/gpu-arrays/docs.lisp: The cepl/core/gpu-arrays/docs․lisp file
core/gpu-arrays/texture-backed.lisp: The cepl/core/gpu-arrays/texture-backed․lisp file
core/gpu-arrays/with-and-push.lisp: The cepl/core/gpu-arrays/with-and-push․lisp file
core/gpu-buffers/docs.lisp: The cepl/core/gpu-buffers/docs․lisp file
core/gpu-buffers/gpu-buffers.lisp: The cepl/core/gpu-buffers/gpu-buffers․lisp file
core/internals.lisp: The cepl/core/internals․lisp file
core/lifecycle.lisp: The cepl/core/lifecycle․lisp file
core/measurements/docs.lisp: The cepl/core/measurements/docs․lisp file
core/measurements/measurements.lisp: The cepl/core/measurements/measurements․lisp file
core/memory/docs.lisp: The cepl/core/memory/docs․lisp file
core/memory/memory.lisp: The cepl/core/memory/memory․lisp file
core/pipelines/bake.lisp: The cepl/core/pipelines/bake․lisp file
core/pipelines/compile-context.lisp: The cepl/core/pipelines/compile-context․lisp file
core/pipelines/defpipeline.lisp: The cepl/core/pipelines/defpipeline․lisp file
core/pipelines/docs.lisp: The cepl/core/pipelines/docs․lisp file
core/pipelines/funcall-g.lisp: The cepl/core/pipelines/funcall-g․lisp file
core/pipelines/generics.lisp: The cepl/core/pipelines/generics․lisp file
core/pipelines/glsl-stages.lisp: The cepl/core/pipelines/glsl-stages․lisp file
core/pipelines/gpu-functions.lisp: The cepl/core/pipelines/gpu-functions․lisp file
core/pipelines/gpu-lambda.lisp: The cepl/core/pipelines/gpu-lambda․lisp file
core/pipelines/gpu-macros.lisp: The cepl/core/pipelines/gpu-macros․lisp file
core/pipelines/gpu-pipeline-base.lisp: The cepl/core/pipelines/gpu-pipeline-base․lisp file
core/pipelines/map-g.lisp: The cepl/core/pipelines/map-g․lisp file
core/pipelines/mapg-context.lisp: The cepl/core/pipelines/mapg-context․lisp file
core/pipelines/multi-draw.lisp: The cepl/core/pipelines/multi-draw․lisp file
core/pipelines/pipeline-validation.lisp: The cepl/core/pipelines/pipeline-validation․lisp file
core/pipelines/programs.lisp: The cepl/core/pipelines/programs․lisp file
core/pipelines/quad-stages.lisp: The cepl/core/pipelines/quad-stages․lisp file
core/pipelines/uniform-assigners-generation.lisp: The cepl/core/pipelines/uniform-assigners-generation․lisp file
core/pipelines/uniforms.lisp: The cepl/core/pipelines/uniforms․lisp file
core/pixel-store/pixel-store.lisp: The cepl/core/pixel-store/pixel-store․lisp file
core/queries/query.lisp: The cepl/core/queries/query․lisp file
core/render-buffers/render-buffer.lisp: The cepl/core/render-buffers/render-buffer․lisp file
core/repl.lisp: The cepl/core/repl․lisp file
core/samplers/context.lisp: The cepl/core/samplers/context․lisp file
core/samplers/docs.lisp: The cepl/core/samplers/docs․lisp file
core/samplers/samplers.lisp: The cepl/core/samplers/samplers․lisp file
core/scissor/scissor.lisp: The cepl/core/scissor/scissor․lisp file
core/ssbos/docs.lisp: The cepl/core/ssbos/docs․lisp file
core/ssbos/ssbos.lisp: The cepl/core/ssbos/ssbos․lisp file
core/stencil/mask.lisp: The cepl/core/stencil/mask․lisp file
core/stencil/stencil.lisp: The cepl/core/stencil/stencil․lisp file
core/streams/buffer-streams.lisp: The cepl/core/streams/buffer-streams․lisp file
core/streams/docs.lisp: The cepl/core/streams/docs․lisp file
core/sync/sync.lisp: The cepl/core/sync/sync․lisp file
core/textures/def.lisp: The cepl/core/textures/def․lisp file
core/textures/docs.lisp: The cepl/core/textures/docs․lisp file
core/textures/texture-samplers.lisp: The cepl/core/textures/texture-samplers․lisp file
core/textures/textures.lisp: The cepl/core/textures/textures․lisp file
core/transform-feedback/transform-feedback.lisp: The cepl/core/transform-feedback/transform-feedback․lisp file
core/types/cepl-types.lisp: The cepl/core/types/cepl-types․lisp file
core/types/cffi-extra-primitive-types.lisp: The cepl/core/types/cffi-extra-primitive-types․lisp file
core/types/cffi-helpers.lisp: The cepl/core/types/cffi-helpers․lisp file
core/types/checks.lisp: The cepl/core/types/checks․lisp file
core/types/docs-image-formats.lisp: The cepl/core/types/docs-image-formats․lisp file
core/types/docs-pixel-formats.lisp: The cepl/core/types/docs-pixel-formats․lisp file
core/types/docs.lisp: The cepl/core/types/docs․lisp file
core/types/image-format.lisp: The cepl/core/types/image-format․lisp file
core/types/initalized-p.lisp: The cepl/core/types/initalized-p․lisp file
core/types/layout.lisp: The cepl/core/types/layout․lisp file
core/types/math.lisp: The cepl/core/types/math․lisp file
core/types/nulls-and-uninitialized.lisp: The cepl/core/types/nulls-and-uninitialized․lisp file
core/types/pixel-format.lisp: The cepl/core/types/pixel-format․lisp file
core/types/predefined/docs.lisp: The cepl/core/types/predefined/docs․lisp file
core/types/predefined/gpu-structs.lisp: The cepl/core/types/predefined/gpu-structs․lisp file
core/types/structs.lisp: The cepl/core/types/structs․lisp file
core/types/types.lisp: The cepl/core/types/types․lisp file
core/ubos/docs.lisp: The cepl/core/ubos/docs․lisp file
core/ubos/ubo.lisp: The cepl/core/ubos/ubo․lisp file
core/utils.lisp: The cepl/core/utils․lisp file
core/vaos/docs.lisp: The cepl/core/vaos/docs․lisp file
core/vaos/vaos.lisp: The cepl/core/vaos/vaos․lisp file
core/viewports/docs.lisp: The cepl/core/viewports/docs․lisp file
core/viewports/viewport.lisp: The cepl/core/viewports/viewport․lisp file
could-not-layout-type: Public conditions

D
defn/defn.lisp: The cepl․build/defn/defn․lisp file
defn/package.lisp: The cepl․build/defn/package․lisp file
defxstar-hidden: The defxstar-hidden package
delayed: Private structures
delete-multi-func-error: Public conditions
dispatch-called-outside-of-map-g: Public conditions
docs/api/package.lisp: The cepl/docs/api/package․lisp file
dont-define-space-to-self: Public conditions

E
elem-byte-size: Private types
elements-indirect-command: Public structures
empty-fbo-params: Public structures
extended-attachment-num: Public types

F
failed-to-test-compile-gpu-func: Public conditions
fbo: Public structures
fbo-binding-missing: Public conditions
fbo-missing-outputs: Public conditions
fbo-target-not-valid-constant: Public conditions
File, build/build.lisp: The cepl․build/build/build․lisp file
File, build/package.lisp: The cepl․build/build/package․lisp file
File, cepl.asd: The cepl/cepl․asd file
File, cepl.build.asd: The cepl․build/cepl․build․asd file
File, core/blending/blending.lisp: The cepl/core/blending/blending․lisp file
File, core/blending/docs.lisp: The cepl/core/blending/docs․lisp file
File, core/c-arrays/aref-c.lisp: The cepl/core/c-arrays/aref-c․lisp file
File, core/c-arrays/def.lisp: The cepl/core/c-arrays/def․lisp file
File, core/c-arrays/docs.lisp: The cepl/core/c-arrays/docs․lisp file
File, core/c-arrays/make.lisp: The cepl/core/c-arrays/make․lisp file
File, core/c-arrays/map.lisp: The cepl/core/c-arrays/map․lisp file
File, core/c-arrays/populate.lisp: The cepl/core/c-arrays/populate․lisp file
File, core/c-arrays/rest.lisp: The cepl/core/c-arrays/rest․lisp file
File, core/color/color.lisp: The cepl/core/color/color․lisp file
File, core/compute/compute.lisp: The cepl/core/compute/compute․lisp file
File, core/context/cepl-context.lisp: The cepl/core/context/cepl-context․lisp file
File, core/context/delayed-resource-init.lisp: The cepl/core/context/delayed-resource-init․lisp file
File, core/context/documentation-functions.lisp: The cepl/core/context/documentation-functions․lisp file
File, core/context/gl-context.lisp: The cepl/core/context/gl-context․lisp file
File, core/context/known-state-blocks.lisp: The cepl/core/context/known-state-blocks․lisp file
File, core/context/make.lisp: The cepl/core/context/make․lisp file
File, core/context/surface.lisp: The cepl/core/context/surface․lisp file
File, core/context/types.lisp: The cepl/core/context/types․lisp file
File, core/context/version.lisp: The cepl/core/context/version․lisp file
File, core/depth/depth.lisp: The cepl/core/depth/depth․lisp file
File, core/early.lisp: The cepl/core/early․lisp file
File, core/errors.lisp: The cepl/core/errors․lisp file
File, core/face/face.lisp: The cepl/core/face/face․lisp file
File, core/fbos/docs.lisp: The cepl/core/fbos/docs․lisp file
File, core/fbos/fbo.lisp: The cepl/core/fbos/fbo․lisp file
File, core/ffi.lisp: The cepl/core/ffi․lisp file
File, core/gpu-arrays/buffer-backed.lisp: The cepl/core/gpu-arrays/buffer-backed․lisp file
File, core/gpu-arrays/docs.lisp: The cepl/core/gpu-arrays/docs․lisp file
File, core/gpu-arrays/texture-backed.lisp: The cepl/core/gpu-arrays/texture-backed․lisp file
File, core/gpu-arrays/with-and-push.lisp: The cepl/core/gpu-arrays/with-and-push․lisp file
File, core/gpu-buffers/docs.lisp: The cepl/core/gpu-buffers/docs․lisp file
File, core/gpu-buffers/gpu-buffers.lisp: The cepl/core/gpu-buffers/gpu-buffers․lisp file
File, core/internals.lisp: The cepl/core/internals․lisp file
File, core/lifecycle.lisp: The cepl/core/lifecycle․lisp file
File, core/measurements/docs.lisp: The cepl/core/measurements/docs․lisp file
File, core/measurements/measurements.lisp: The cepl/core/measurements/measurements․lisp file
File, core/memory/docs.lisp: The cepl/core/memory/docs․lisp file
File, core/memory/memory.lisp: The cepl/core/memory/memory․lisp file
File, core/pipelines/bake.lisp: The cepl/core/pipelines/bake․lisp file
File, core/pipelines/compile-context.lisp: The cepl/core/pipelines/compile-context․lisp file
File, core/pipelines/defpipeline.lisp: The cepl/core/pipelines/defpipeline․lisp file
File, core/pipelines/docs.lisp: The cepl/core/pipelines/docs․lisp file
File, core/pipelines/funcall-g.lisp: The cepl/core/pipelines/funcall-g․lisp file
File, core/pipelines/generics.lisp: The cepl/core/pipelines/generics․lisp file
File, core/pipelines/glsl-stages.lisp: The cepl/core/pipelines/glsl-stages․lisp file
File, core/pipelines/gpu-functions.lisp: The cepl/core/pipelines/gpu-functions․lisp file
File, core/pipelines/gpu-lambda.lisp: The cepl/core/pipelines/gpu-lambda․lisp file
File, core/pipelines/gpu-macros.lisp: The cepl/core/pipelines/gpu-macros․lisp file
File, core/pipelines/gpu-pipeline-base.lisp: The cepl/core/pipelines/gpu-pipeline-base․lisp file
File, core/pipelines/map-g.lisp: The cepl/core/pipelines/map-g․lisp file
File, core/pipelines/mapg-context.lisp: The cepl/core/pipelines/mapg-context․lisp file
File, core/pipelines/multi-draw.lisp: The cepl/core/pipelines/multi-draw․lisp file
File, core/pipelines/pipeline-validation.lisp: The cepl/core/pipelines/pipeline-validation․lisp file
File, core/pipelines/programs.lisp: The cepl/core/pipelines/programs․lisp file
File, core/pipelines/quad-stages.lisp: The cepl/core/pipelines/quad-stages․lisp file
File, core/pipelines/uniform-assigners-generation.lisp: The cepl/core/pipelines/uniform-assigners-generation․lisp file
File, core/pipelines/uniforms.lisp: The cepl/core/pipelines/uniforms․lisp file
File, core/pixel-store/pixel-store.lisp: The cepl/core/pixel-store/pixel-store․lisp file
File, core/queries/query.lisp: The cepl/core/queries/query․lisp file
File, core/render-buffers/render-buffer.lisp: The cepl/core/render-buffers/render-buffer․lisp file
File, core/repl.lisp: The cepl/core/repl․lisp file
File, core/samplers/context.lisp: The cepl/core/samplers/context․lisp file
File, core/samplers/docs.lisp: The cepl/core/samplers/docs․lisp file
File, core/samplers/samplers.lisp: The cepl/core/samplers/samplers․lisp file
File, core/scissor/scissor.lisp: The cepl/core/scissor/scissor․lisp file
File, core/ssbos/docs.lisp: The cepl/core/ssbos/docs․lisp file
File, core/ssbos/ssbos.lisp: The cepl/core/ssbos/ssbos․lisp file
File, core/stencil/mask.lisp: The cepl/core/stencil/mask․lisp file
File, core/stencil/stencil.lisp: The cepl/core/stencil/stencil․lisp file
File, core/streams/buffer-streams.lisp: The cepl/core/streams/buffer-streams․lisp file
File, core/streams/docs.lisp: The cepl/core/streams/docs․lisp file
File, core/sync/sync.lisp: The cepl/core/sync/sync․lisp file
File, core/textures/def.lisp: The cepl/core/textures/def․lisp file
File, core/textures/docs.lisp: The cepl/core/textures/docs․lisp file
File, core/textures/texture-samplers.lisp: The cepl/core/textures/texture-samplers․lisp file
File, core/textures/textures.lisp: The cepl/core/textures/textures․lisp file
File, core/transform-feedback/transform-feedback.lisp: The cepl/core/transform-feedback/transform-feedback․lisp file
File, core/types/cepl-types.lisp: The cepl/core/types/cepl-types․lisp file
File, core/types/cffi-extra-primitive-types.lisp: The cepl/core/types/cffi-extra-primitive-types․lisp file
File, core/types/cffi-helpers.lisp: The cepl/core/types/cffi-helpers․lisp file
File, core/types/checks.lisp: The cepl/core/types/checks․lisp file
File, core/types/docs-image-formats.lisp: The cepl/core/types/docs-image-formats․lisp file
File, core/types/docs-pixel-formats.lisp: The cepl/core/types/docs-pixel-formats․lisp file
File, core/types/docs.lisp: The cepl/core/types/docs․lisp file
File, core/types/image-format.lisp: The cepl/core/types/image-format․lisp file
File, core/types/initalized-p.lisp: The cepl/core/types/initalized-p․lisp file
File, core/types/layout.lisp: The cepl/core/types/layout․lisp file
File, core/types/math.lisp: The cepl/core/types/math․lisp file
File, core/types/nulls-and-uninitialized.lisp: The cepl/core/types/nulls-and-uninitialized․lisp file
File, core/types/pixel-format.lisp: The cepl/core/types/pixel-format․lisp file
File, core/types/predefined/docs.lisp: The cepl/core/types/predefined/docs․lisp file
File, core/types/predefined/gpu-structs.lisp: The cepl/core/types/predefined/gpu-structs․lisp file
File, core/types/structs.lisp: The cepl/core/types/structs․lisp file
File, core/types/types.lisp: The cepl/core/types/types․lisp file
File, core/ubos/docs.lisp: The cepl/core/ubos/docs․lisp file
File, core/ubos/ubo.lisp: The cepl/core/ubos/ubo․lisp file
File, core/utils.lisp: The cepl/core/utils․lisp file
File, core/vaos/docs.lisp: The cepl/core/vaos/docs․lisp file
File, core/vaos/vaos.lisp: The cepl/core/vaos/vaos․lisp file
File, core/viewports/docs.lisp: The cepl/core/viewports/docs․lisp file
File, core/viewports/viewport.lisp: The cepl/core/viewports/viewport․lisp file
File, defn/defn.lisp: The cepl․build/defn/defn․lisp file
File, defn/package.lisp: The cepl․build/defn/package․lisp file
File, docs/api/package.lisp: The cepl/docs/api/package․lisp file
File, host/api-0.lisp: The cepl/host/api-0․lisp file
File, host/api-1.lisp: The cepl/host/api-1․lisp file
File, host/api-2.lisp: The cepl/host/api-2․lisp file
File, host/api-api.lisp: The cepl/host/api-api․lisp file
File, host/api-common.lisp: The cepl/host/api-common․lisp file
File, host/api-generics.lisp: The cepl/host/api-generics․lisp file
File, package.lisp: The cepl/package․lisp file
File, project.lisp: The cepl/project․lisp file
func-key: Private classes
func-keyed-pipeline-not-found: Public conditions
functions-in-non-uniform-args: Public conditions

G
g-pc: Public structures
g-pn: Public structures
g-pnb: Public structures
g-pnc: Public structures
g-pncb: Public structures
g-pnt: Public structures
g-pntb: Public structures
g-pntc: Public structures
g-pntcb: Public structures
g-pt: Public structures
gbuf-byte-size: Private types
gfun-invalid-arg-format: Public conditions
gl-context: Public classes
gl-context-initialized-from-incorrect-thread: Public conditions
gl-enum-value: Public types
gl-id: Public types
gl-layout: Private classes
gl-sizei: Public types
gl-struct-slot: Private classes
gl-version-too-low-for-empty-fbos: Private conditions
glambda-state: Private structures
glsl-geom-stage-no-out-layout: Public conditions
glsl-stage-spec: Private classes
glsl-version-conflict: Public conditions
glsl-version-conflict-in-gpu-func: Public conditions
gpu-array: Public structures
gpu-array-bb: Public structures
gpu-array-from-buffer-missing-args: Public conditions
gpu-array-from-id-missing-args: Public conditions
gpu-array-t: Public structures
gpu-buffer: Public structures
gpu-fence: Public structures
gpu-func-spec: Private classes
gpu-func-spec-not-found: Public conditions
gpu-func-symbol-name: Public conditions
gpu-lambda-state: Private classes
gpu-query: Public structures

H
host/api-0.lisp: The cepl/host/api-0․lisp file
host/api-1.lisp: The cepl/host/api-1․lisp file
host/api-2.lisp: The cepl/host/api-2․lisp file
host/api-api.lisp: The cepl/host/api-api․lisp file
host/api-common.lisp: The cepl/host/api-common․lisp file
host/api-generics.lisp: The cepl/host/api-generics․lisp file

I
image-format->lisp-type-failed: Public conditions
image-format->pixel-format-failed: Public conditions
inconsistent-struct-layout: Public conditions
incorrect-number-of-arrays-in-tfs: Public conditions
index-layout-with-unknown-length: Public conditions
index-on-buffer-stream-with-no-gpu-arrays: Public conditions
index-on-buffer-stream-with-no-gpu-layouts: Public conditions
invalid-args-in-make-tfs: Public conditions
invalid-attachments-for-empty-fbo: Public conditions
invalid-compose-gpipe-form: Public conditions
invalid-context-for-assert-gpipe: Public conditions
invalid-context-for-assert-options: Public conditions
invalid-cube-fbo-args: Public conditions
invalid-data-layout-specifier: Public conditions
invalid-defpipeline-options: Public conditions
invalid-empty-fbo-declaration: Public conditions
invalid-fbo-args: Private conditions
invalid-gpu-arrays-layout: Public conditions
invalid-gpu-buffer-layout: Public conditions
invalid-gpu-function-args: Public conditions
invalid-inline-glsl-stage-arg-layout: Public conditions
invalid-keywords-for-shader-gpipe-args: Public conditions
invalid-layout-for-inargs: Public conditions
invalid-layout-for-uniform: Public conditions
invalid-options-for-texture: Public conditions
invalid-sampler-wrap-value: Public conditions
invalid-shader-gpipe-form: Public conditions
invalid-shader-gpipe-stage-keys: Public conditions
invalid-sizes-in-make-tfs: Public conditions
invalid-stage-for-single-stage-pipeline: Public conditions
invalid-stream-layout: Public conditions

L
lambda-pipeline-spec: Private classes
lisp-type->image-format-failed: Public conditions

M
make-arrays-layout-count-mismatch: Public conditions
make-arrays-layout-mismatch: Public conditions
make-gpu-array-from-c-array-mismatched-dimensions: Public conditions
make-gpu-buffer-from-id-clashing-keys: Public conditions
make-project-needs-quickproject: Private conditions
make-project-no-such-dir: Private conditions
make-ssbo-from-array-bad-type: Private conditions
make-tex-array-not-match-type: Public conditions
make-tex-array-not-match-type2: Public conditions
make-tex-no-content-no-type: Public conditions
make-ubo-from-array-bad-type: Private conditions
mapping-over-partial-pipeline: Public conditions
max-context-count-reached: Public conditions
mixed-pipelines-in-with-tb: Public conditions
multi-func-error: Public conditions

N
nested-with-transform-feedback: Public conditions
no-named-stages: Public conditions
non-consecutive-feedback-groups: Public conditions
not-a-gpu-lambda: Public conditions
not-enough-args-for-implicit-gpipe-stages: Public conditions

O
one-stage-non-explicit: Public conditions

P
Package, %cepl.types: The %cepl․types package
Package, cepl: The cepl package
Package, cepl-utils: The cepl-utils package
Package, cepl.blending: The cepl․blending package
Package, cepl.build: The cepl․build package
Package, cepl.c-arrays: The cepl․c-arrays package
Package, cepl.compute: The cepl․compute package
Package, cepl.context: The cepl․context package
Package, cepl.defn: The cepl․defn package
Package, cepl.docs: The cepl․docs package
Package, cepl.documentation-functions: The cepl․documentation-functions package
Package, cepl.errors: The cepl․errors package
Package, cepl.fbos: The cepl․fbos package
Package, cepl.gpu-arrays: The cepl․gpu-arrays package
Package, cepl.gpu-arrays.buffer-backed: The cepl․gpu-arrays․buffer-backed package
Package, cepl.gpu-arrays.texture-backed: The cepl․gpu-arrays․texture-backed package
Package, cepl.gpu-buffers: The cepl․gpu-buffers package
Package, cepl.hidden: The cepl․hidden package
Package, cepl.host: The cepl․host package
Package, cepl.image-formats: The cepl․image-formats package
Package, cepl.internals: The cepl․internals package
Package, cepl.lifecycle: The cepl․lifecycle package
Package, cepl.measurements: The cepl․measurements package
Package, cepl.memory: The cepl․memory package
Package, cepl.pipelines: The cepl․pipelines package
Package, cepl.pixel-formats: The cepl․pixel-formats package
Package, cepl.queries: The cepl․queries package
Package, cepl.render-buffers: The cepl․render-buffers package
Package, cepl.samplers: The cepl․samplers package
Package, cepl.scissor: The cepl․scissor package
Package, cepl.ssbos: The cepl․ssbos package
Package, cepl.stencil: The cepl․stencil package
Package, cepl.streams: The cepl․streams package
Package, cepl.sync: The cepl․sync package
Package, cepl.textures: The cepl․textures package
Package, cepl.transform-feedback: The cepl․transform-feedback package
Package, cepl.types: The cepl․types package
Package, cepl.types.foreign: The cepl․types․foreign package
Package, cepl.types.predefined: The cepl․types․predefined package
Package, cepl.ubos: The cepl․ubos package
Package, cepl.vaos: The cepl․vaos package
Package, cepl.viewports: The cepl․viewports package
Package, defxstar-hidden: The defxstar-hidden package
package.lisp: The cepl/package․lisp file
partial-lambda-pipeline: Public conditions
pending-surface: Private classes
pipeline-invalid-null-stage: Public conditions
pipeline-recompile-in-tfb-scope: Public conditions
pipeline-spec: Private classes
pipeline-spec-base: Private classes
pipeline-state: Private structures
pixel-format: Public structures
pixel-format->image-format-failed: Public conditions
pixel-format-in-bb-texture: Public conditions
primitives-generated-query: Public structures
project.lisp: The cepl/project․lisp file
pull*-g-not-enabled: Public conditions
pull-g-not-cached: Public conditions

Q
query-is-active-bug: Public conditions
query-is-already-active: Public conditions
query-not-active: Public conditions
quote-in-buffer-layout: Public conditions
quote-symbol-found-in-fbo-dimensions: Public conditions

R
render-buffer: Public structures

S
sampler: Public structures
sampler-id-box: Public structures
samples-passed-query: Public structures
scoped-gpu-query: Public structures
shader-pipeline-non-null-args: Public conditions
shared-context-created-from-incorrect-thread: Public conditions
ssbo: Public structures
stage-in-context-only-valid-for-glsl-stages: Public conditions
stage-not-found: Public conditions
stage-not-valid-for-function-restriction: Public conditions
state-restore-limitation-blending: Public conditions
state-restore-limitation-queries: Private conditions
state-restore-limitation-transform-feedback: Public conditions
std-140: Public classes
std-430: Public classes
stencil-mask: Public types
stencil-params: Public structures
struct-in-glsl-stage-args: Public conditions
Structure, any-samples-passed-conservative-query: Public structures
Structure, any-samples-passed-query: Public structures
Structure, arrays-indirect-command: Public structures
Structure, att: Public structures
Structure, base-gstruct-wrapper: Private structures
Structure, blending-params: Public structures
Structure, boop6: Private structures
Structure, buffer-stream: Public structures
Structure, buffer-texture: Public structures
Structure, c-array: Public structures
Structure, cepl-context: Public structures
Structure, compile-context: Public structures
Structure, compute-space: Public structures
Structure, delayed: Private structures
Structure, elements-indirect-command: Public structures
Structure, empty-fbo-params: Public structures
Structure, fbo: Public structures
Structure, g-pc: Public structures
Structure, g-pn: Public structures
Structure, g-pnb: Public structures
Structure, g-pnc: Public structures
Structure, g-pncb: Public structures
Structure, g-pnt: Public structures
Structure, g-pntb: Public structures
Structure, g-pntc: Public structures
Structure, g-pntcb: Public structures
Structure, g-pt: Public structures
Structure, glambda-state: Private structures
Structure, gpu-array: Public structures
Structure, gpu-array-bb: Public structures
Structure, gpu-array-t: Public structures
Structure, gpu-buffer: Public structures
Structure, gpu-fence: Public structures
Structure, gpu-query: Public structures
Structure, pipeline-state: Private structures
Structure, pixel-format: Public structures
Structure, primitives-generated-query: Public structures
Structure, render-buffer: Public structures
Structure, sampler: Public structures
Structure, sampler-id-box: Public structures
Structure, samples-passed-query: Public structures
Structure, scoped-gpu-query: Public structures
Structure, ssbo: Public structures
Structure, stencil-params: Public structures
Structure, texture: Public structures
Structure, time-elapsed-query: Public structures
Structure, timestamp-query: Public structures
Structure, transform-feedback-primitives-written-query: Public structures
Structure, transform-feedback-stream: Public structures
Structure, ubo: Public structures
Structure, uidx: Private structures
Structure, unbound-cepl-context: Private structures
Structure, viewport: Public structures
symbol-stage-designator: Public conditions
symbol-stage-designators: Public conditions
System, cepl: The cepl system
System, cepl.build: The cepl․build system

T
tex-unit: Public types
texture: Public structures
texture-dimensions-lequal-zero: Public conditions
tfs-setf-arrays-whilst-bound: Public conditions
time-elapsed-query: Public structures
timestamp-query: Public structures
transform-feedback-primitives-written-query: Public structures
transform-feedback-stream: Public structures
tried-to-make-context-on-thread-that-already-has-one: Public conditions
Type, array-index: Public types
Type, attachment-name: Public types
Type, attachment-num: Public types
Type, c-array-index: Public types
Type, clear-buffer-mask: Private types
Type, context-id: Public types
Type, elem-byte-size: Private types
Type, extended-attachment-num: Public types
Type, gbuf-byte-size: Private types
Type, gl-enum-value: Public types
Type, gl-id: Public types
Type, gl-sizei: Public types
Type, stencil-mask: Public types
Type, tex-unit: Public types
Type, uploadable-lisp-seq: Public types
Type, vao-id: Public types

U
ubo: Public structures
uidx: Private structures
unbound-cepl-context: Private structures
unknown-stage-kind: Public conditions
unknown-symbols-in-pipeline-context: Public conditions
uploadable-lisp-seq: Public types

V
vao-id: Public types
viewport: Public structures
v_arrays-indirect-command: Private classes
v_elements-indirect-command: Private classes
v_g-pc: Private classes
v_g-pn: Private classes
v_g-pnb: Private classes
v_g-pnc: Private classes
v_g-pncb: Private classes
v_g-pnt: Private classes
v_g-pntb: Private classes
v_g-pntc: Private classes
v_g-pntcb: Private classes
v_g-pt: Private classes