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

QuadGouraudBlended

Struct QuadGouraudBlended 

Source
#[repr(C, align(4))]
pub struct QuadGouraudBlended { pub tag: u32, pub draw_mode: u32, pub color0_cmd: u32, pub v0: u32, pub color1: u32, pub v1: u32, pub color2: u32, pub v2: u32, pub color3: u32, pub v3: u32, }
Expand description

Semi-transparent Gouraud quad with its GP0(E1) blend state embedded in the same DMA packet.

Untextured translucent polygons do not carry blend bits of their own: they read them from the current draw mode. Keeping the state word and polygon in one OT packet makes the result independent of whichever textured surface happened to draw immediately before it.

Fields§

§tag: u32

OT linkage.

§draw_mode: u32

GP0(E1) draw mode selecting the native semi-transparency equation.

§color0_cmd: u32

Vertex 0 colour + semi-transparent Gouraud-quad opcode.

§v0: u32

Vertex 0 position.

§color1: u32

Vertex 1 colour.

§v1: u32

Vertex 1 position.

§color2: u32

Vertex 2 colour.

§v2: u32

Vertex 2 position.

§color3: u32

Vertex 3 colour.

§v3: u32

Vertex 3 position.

Implementations§

Source§

impl QuadGouraudBlended

Source

pub const WORDS: u8 = 9

Data-word count after the tag.

Source

pub const fn new( verts: [(i16, i16); 4], colors: [(u8, u8, u8); 4], blend_mode: BlendMode, ) -> Self

Build a native semi-transparent Gouraud ribbon segment.

Trait Implementations§

Source§

impl Clone for QuadGouraudBlended

Source§

fn clone(&self) -> QuadGouraudBlended

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 QuadGouraudBlended

Source§

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

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

impl GpuPacket for QuadGouraudBlended

Source§

const WORDS: u8 = QuadGouraudBlended::WORDS

Payload words after the tag.
Source§

impl Hash for QuadGouraudBlended

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given [Hasher]. Read more
1.3.0§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given [Hasher]. Read more
Source§

impl PartialEq for QuadGouraudBlended

Source§

fn eq(&self, other: &QuadGouraudBlended) -> 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 QuadGouraudBlended

Source§

impl Eq for QuadGouraudBlended

Source§

impl StructuralPartialEq for QuadGouraudBlended

Auto Trait Implementations§

§

impl Freeze for QuadGouraudBlended

§

impl RefUnwindSafe for QuadGouraudBlended

§

impl Send for QuadGouraudBlended

§

impl Sync for QuadGouraudBlended

§

impl Unpin for QuadGouraudBlended

§

impl UnsafeUnpin for QuadGouraudBlended

§

impl UnwindSafe for QuadGouraudBlended

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.