cursor trails

This commit is contained in:
Ryan Fleury
2025-11-07 12:00:40 -08:00
parent bc49b806c1
commit 0c7630e41c
7 changed files with 47 additions and 8 deletions
@@ -58,7 +58,7 @@ str8_lit_comp(
" float4 color10 : COL2;\n"
" float4 color11 : COL3;\n"
" float4 corner_radii_px : CRAD;\n"
" float4 style_params : STY; // x: border_thickness_px, y: softness_px, z: omit_texture, w: unused\n"
" float4 style_params : STY; // x: border_thickness_px, y: softness_px, z: omit_texture, w: shear\n"
" uint vertex_id : SV_VertexID;\n"
"};\n"
"\n"
@@ -113,14 +113,15 @@ str8_lit_comp(
" float border_thickness_px = cpu2vertex.style_params.x;\n"
" float softness_px = cpu2vertex.style_params.y;\n"
" float omit_texture = cpu2vertex.style_params.z;\n"
" float shear_px = cpu2vertex.style_params.w;\n"
" \n"
" //- rjf: prep per-vertex arrays to sample from (p: position, t: texcoord, c: colorcoord, r: cornerradius)\n"
" float2 dst_p_verts_px[] =\n"
" {\n"
" float2(dst_p0_px.x, dst_p1_px.y),\n"
" float2(dst_p0_px.x, dst_p0_px.y),\n"
" float2(dst_p1_px.x, dst_p1_px.y),\n"
" float2(dst_p1_px.x, dst_p0_px.y),\n"
" float2(dst_p1_px.x, dst_p1_px.y + shear_px),\n"
" float2(dst_p1_px.x, dst_p0_px.y + shear_px),\n"
" };\n"
" float2 src_p_verts_px[] =\n"
" {\n"
+4 -3
View File
@@ -56,7 +56,7 @@ struct CPU2Vertex
float4 color10 : COL2;
float4 color11 : COL3;
float4 corner_radii_px : CRAD;
float4 style_params : STY; // x: border_thickness_px, y: softness_px, z: omit_texture, w: unused
float4 style_params : STY; // x: border_thickness_px, y: softness_px, z: omit_texture, w: shear
uint vertex_id : SV_VertexID;
};
@@ -111,14 +111,15 @@ vs_main(CPU2Vertex cpu2vertex)
float border_thickness_px = cpu2vertex.style_params.x;
float softness_px = cpu2vertex.style_params.y;
float omit_texture = cpu2vertex.style_params.z;
float shear_px = cpu2vertex.style_params.w;
//- rjf: prep per-vertex arrays to sample from (p: position, t: texcoord, c: colorcoord, r: cornerradius)
float2 dst_p_verts_px[] =
{
float2(dst_p0_px.x, dst_p1_px.y),
float2(dst_p0_px.x, dst_p0_px.y),
float2(dst_p1_px.x, dst_p1_px.y),
float2(dst_p1_px.x, dst_p0_px.y),
float2(dst_p1_px.x, dst_p1_px.y + shear_px),
float2(dst_p1_px.x, dst_p0_px.y + shear_px),
};
float2 src_p_verts_px[] =
{
+1 -1
View File
@@ -103,7 +103,7 @@ struct R_Rect2DInst
F32 border_thickness;
F32 edge_softness;
F32 white_texture_override;
F32 _unused_[1];
F32 shear;
};
typedef struct R_Mesh3DInst R_Mesh3DInst;