Skip to main content
← PSoXide SDK guides and examples · SDK f2fec1c301f1 · All Cargo features enabled; check feature gates before use.

TexturedGouraudPacketMaterial

Struct TexturedGouraudPacketMaterial 

Source
pub struct TexturedGouraudPacketMaterial {
    pub tex_window_word: u32,
    pub color0_command_word: u32,
    pub clut_high_word: u32,
    pub tpage_high_word: u32,
}
Expand description

Prepacked material words for textured Gouraud triangle packets.

Hot cached-room paths emit many triangles with the same material. Keeping these invariant words beside the resolved material avoids rebuilding GP0 texture-window, command, CLUT, and tpage state for every primitive packet.

Fields§

§tex_window_word: u32

GP0(E2) texture-window word.

§color0_command_word: u32

Textured Gouraud triangle command word without vertex-0 RGB.

§clut_high_word: u32

CLUT word shifted into the high half of vertex-0 UV.

§tpage_high_word: u32

TexturePage word shifted into the high half of vertex-1 UV.

Implementations§

Source§

impl TexturedGouraudPacketMaterial

Source

pub const fn from_texture(material: TextureMaterial) -> Self

Build prepacked Gouraud packet words from a texture material.

Source

pub const fn is_translucent(self) -> bool

True when packets using this material need the transparent render layer.

Trait Implementations§

Source§

impl Clone for TexturedGouraudPacketMaterial

Source§

fn clone(&self) -> TexturedGouraudPacketMaterial

Returns a duplicate of the value. Read more
1.0.0§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for TexturedGouraudPacketMaterial

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for TexturedGouraudPacketMaterial

Source§

fn eq(&self, other: &TexturedGouraudPacketMaterial) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for TexturedGouraudPacketMaterial

Source§

impl Eq for TexturedGouraudPacketMaterial

Source§

impl StructuralPartialEq for TexturedGouraudPacketMaterial

Auto Trait Implementations§

Blanket Implementations§

§

impl<T> Any for T
where T: 'static + ?Sized,

§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
§

impl<T> Borrow<T> for T
where T: ?Sized,

§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
§

impl<T> BorrowMut<T> for T
where T: ?Sized,

§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
§

impl<T> CloneToUninit for T
where T: Clone,

§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<T> From<T> for T

§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, U> Into<U> for T
where U: From<T>,

§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.