mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-10-18 00:40:30 +02:00
They were only used for UV from texture coordinates. With the texture matrix or environment map, UV isn't prescaled, which is the same as a scale of 1 and no offset, so NoPrescale versions pass that. God of War draws 5 million of its vertices per 10 seconds this way, which without the vertex JIT took 9.6 ns each through the steps and now 2.4. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
12 lines
636 B
C
12 lines
636 B
C
#pragma once
|
|
|
|
// These are useful on JIT-less platforms - they don't beat the jitted vertex decoders by much, but they
|
|
// will beat the function-call-stitched ones by a lot.
|
|
|
|
void VtxDec_Tu16_C8888_Pfloat(const u8 *srcp, u8 *dstp, int count, const UVScale *uvScaleOffset);
|
|
void VtxDec_Tu8_C5551_Ps16(const u8 *srcp, u8 *dstp, int count, const UVScale *uvScaleOffset);
|
|
|
|
// For the UV generation modes that don't prescale.
|
|
void VtxDec_Tu16_C8888_Pfloat_NoPrescale(const u8 *srcp, u8 *dstp, int count, const UVScale *uvScaleOffset);
|
|
void VtxDec_Tu8_C5551_Ps16_NoPrescale(const u8 *srcp, u8 *dstp, int count, const UVScale *uvScaleOffset);
|