projects
/
csRadar.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fixed heap-use-after-free in solidgen
[csRadar.git]
/
csrDraw.h
diff --git
a/csrDraw.h
b/csrDraw.h
index 14c91c23fd1f1504902f5eeb1f7429239a7e84d2..f2b007fdd92bd13b0f1b65defa3602916e92fe54 100644
(file)
--- a/
csrDraw.h
+++ b/
csrDraw.h
@@
-2,6
+2,25
@@
typedef struct csr_frag csr_frag;
typedef struct csr_target csr_target;
typedef struct csr_filter csr_filter;
typedef struct csr_target csr_target;
typedef struct csr_filter csr_filter;
+// MSAA patterns
+v2f csr_msaa_1[] =
+{
+ {0.f, 0.f}
+};
+
+v2f csr_msaa_2x2[] =
+{
+ { 0.25f, 0.25f },
+ { 0.25f, -0.25f },
+ { -0.25f, -0.25f },
+ { -0.25f, 0.25f }
+};
+
+v2f csr_msaa_2x2rgss[] =
+{
+
+};
+
struct csr_frag
{
v3f co;
struct csr_frag
{
v3f co;
@@
-202,6
+221,8
@@
void csr_draw( csr_target *rt, vmf_vert *triangles, u32 triangle_count, m4x3f tr
// Derive normal matrix
m4x3_to_3x3( transform, normal );
// Derive normal matrix
m4x3_to_3x3( transform, normal );
+
+ // NOTE: This isn't strictly necessary since CS:GO only uses uniform scaling.
m3x3_inv_transpose( normal, normal );
for( u32 i = 0; i < triangle_count; i ++ )
m3x3_inv_transpose( normal, normal );
for( u32 i = 0; i < triangle_count; i ++ )
@@
-263,6
+284,7
@@
void draw_vmf_group( csr_target *rt, vmf_map *map, vdf_node *root, csr_filter *f
if( filter_visgroups && !vmf_visgroup_match( brush, group_id ) )
continue;
if( filter_visgroups && !vmf_visgroup_match( brush, group_id ) )
continue;
+ // TODO: heap-use-after-free
solidgen_push( &solid, brush );
}
}
solidgen_push( &solid, brush );
}
}