You can first try changing:

IF (c_trace(my.x,temp.x,ignore_me) > 0) {
To
IF (c_trace(my.x,temp.x,ignore_me+use_box) > 0) {

If that doesn't fix it you can also make 16 a larger number in

vec_normalize(temp.x,16);
For example:
vec_normalize(temp.x,32);

That the larger that number is the farther back the camera will be placed from collision point (Target) on model or block.

Although I would write code like this if using use_box and c_trace:

c_trace(my.x,temp.x,ignore_me+use_box);
IF (trace_hit) {
vec_diff(temp.x,my.x,target.x);
vec_normalize(temp.x,16); // make 16 larger to pull camera farther off of collision point
vec_set(camera.x,target.x);
vec_add(camera.x,temp.x);
}


Loco


Professional A8.30
Spoils of War - East Coast Games