Frame
Description
Section titled “Description”The Frame object is a collection of Pass objects that are rendered to a Target by the Renderer.
It is used to render multiple passes to a single target, such as an opaque pass followed by a transparent pass.
You need to inject the Frame object into the Renderer to render it.
Example
Section titled “Example”1 collapsed line
async fn run() -> Result<(), Box<dyn std::error::Error>> {
use fragmentcolor::{ Shader, Pass, Renderer, Frame };
let renderer = Renderer::new();let target = renderer.create_texture_target([100, 100]).await?;
let pass1 = Pass::new("first");let pass2 = Pass::new("second");
let mut frame = Frame::new();frame.add_pass(&pass1);frame.add_pass(&pass2);
3 collapsed lines
Ok(())}fn main() -> Result<(), Box<dyn std::error::Error>> { pollster::block_on(run()) }
import { Shader, Pass, Renderer, Frame } from "fragmentcolor";
const renderer = new Renderer();const target = await renderer.createTextureTarget([100, 100]);
const pass1 = new Pass("first");const pass2 = new Pass("second");
const frame = new Frame();frame.addPass(pass1);frame.addPass(pass2);
from fragmentcolor import Shader, Pass, Renderer, Frame
renderer = Renderer()target = renderer.create_texture_target([100, 100])
pass1 = Pass("first")pass2 = Pass("second")
frame = Frame()frame.add_pass(pass1)frame.add_pass(pass2)
// Swift placeholder â bindings WIP
// Kotlin placeholder â bindings WIP
Methods
Section titled “Methods”Frame::new()
Section titled “Frame::new()”Creates a new Frame object.
A Frame is an ordered collection of Pass objects that will be rendered by the Renderer in sequence.
Example
Section titled “Example”use fragmentcolor::Frame;
let frame = Frame::new();
import { Frame } from "fragmentcolor";
const frame = new Frame();
from fragmentcolor import Frame
frame = Frame()
// Swift placeholder â bindings WIP
// Kotlin placeholder â bindings WIP
Frame::add_pass(pass: Pass)
Section titled “Frame::add_pass(pass: Pass)”Passes are rendered in the order they are added.
Example
Section titled “Example”use fragmentcolor::{Frame, Pass};
let mut pass1 = Pass::new("first");let mut pass2 = Pass::new("second");
let mut frame = Frame::new();frame.add_pass(&pass1);frame.add_pass(&pass2);
import { Frame, Pass } from "fragmentcolor";
const pass1 = new Pass("first");const pass2 = new Pass("second");
const frame = new Frame();frame.addPass(pass1);frame.addPass(pass2);
from fragmentcolor import Frame, Pass
pass1 = Pass("first")pass2 = Pass("second")
frame = Frame()frame.add_pass(pass1)frame.add_pass(pass2)
// Swift placeholder â bindings WIP
// Kotlin placeholder â bindings WIP