Jump to content

  • Log In with Google      Sign In   
  • Create Account


#Actualic0de

Posted 29 December 2012 - 02:39 PM

For example:

Are you using Level-of-Detail for far-away landscapes?
Are you calculating/drawing slices that will just get covered by nearer and taller slices?

Are you paying attention to how data is moving through the memory hierarchy?

Have you read anything about the techniques that were used to achieve Commanche/Delta Force/Outcast? I know I've read whitepapers or blog posts about them at one point.


All slices are sampled but are discarded before being drawn if they are hidden by a taller slice, I tried doing a fast single channel sample just for the height lookup but my sse version was just as fast and i was just making it slower. LOD is probably a good idea Ill look into that. I know Comanche had a shorter render distance and didn't use any filtering but then again I ran it on a 25mhz 386sx just as fast.


#4ic0de

Posted 29 December 2012 - 02:05 PM

For example:

Are you using Level-of-Detail for far-away landscapes?
Are you calculating/drawing slices that will just get covered by nearer and taller slices?

Are you paying attention to how data is moving through the memory hierarchy?

Have you read anything about the techniques that were used to achieve Commanche/Delta Force/Outcast? I know I've read whitepapers or blog posts about them at one point.

All slices are sampled but are discarded before being drawn if they are hidden by a taller slice, I tried doing a fast single channel sample just for the height lookup but my sse version was just as fast and i was just making it slower. LOD is probably a good idea Ill look into that. I know Comanche had a shorter render distance and didn't use any filtering but then again I ran it on a 25mhz 386sx just as fast.

#3ic0de

Posted 29 December 2012 - 02:05 PM

For example:

Are you using Level-of-Detail for far-away landscapes?
Are you calculating/drawing slices that will just get covered by nearer and taller slices?

Are you paying attention to how data is moving through the memory hierarchy?

Have you read anything about the techniques that were used to achieve Commanche/Delta Force/Outcast? I know I've read whitepapers or blog posts about them at one point.



All slices are sampled but are discarded before being drawn if they are hidden by a taller slice, I tried doing a fast single channel sample just for the height lookup but my sse version was just as fast and i was just making it slower. LOD is probably a good idea Ill look into that. I know Comanche had a shorter render distance and didn't use any filtering but then again I ran it on a 25mhz 386sx just as fast.

#2ic0de

Posted 29 December 2012 - 02:02 PM

<blockquote class="ipsBlockquote" data-author="Ravyne" data-cid="5015399">
<p>&nbsp;</p>
<blockquote class="ipsBlockquote" data-author="ic0de" data-cid="5015120">
<p>&nbsp;</p>
<blockquote class="ipsBlockquote" data-author="Ravyne" data-cid="5015065">
<p>I imagine you'd learn more by making your CPU algorithm fast, than by porting your slow CPU algorithm to OpenCL or shaders.</p>
</blockquote>
<br />
I guess i'll do that then, there are parts of my code that are screaming for more sse stuff<br />
&nbsp;<br />
<p>&nbsp;</p>
</blockquote>
&nbsp;<br />
SSE is good, but that's more of a micro-optimization, your fundamental problem is more-likely algorithmic -- in other words, you need to do less work, not the same amount of work more quickly.<br />
&nbsp;<br />
For example:<br />
&nbsp;<br />
Are you using Level-of-Detail for far-away landscapes?<br />
Are you calculating/drawing slices that will just get covered by nearer and taller slices?<br />
&nbsp;<br />
Are you paying attention to how data is moving through the memory hierarchy?<br />
&nbsp;<br />
Have you read anything about the techniques that were used to achieve Commanche/Delta Force/Outcast? I know I've read whitepapers or blog posts about them at one point.<br />
&nbsp;<br />
&nbsp;<br />
<p>&nbsp;</p>
</blockquote>
<p><br />
All slices are sampled but are discarded before being drawn if they are hidden by a taller slice, I tried doing a fast single channel sample just for the height lookup but my sse version was just as fast and i was just making it slower. LOD is probably a good idea Ill look into that. I know Comanche had a shorter render distance and didn't use any filtering but then again I ran it on a 25mhz 386sx just as fast.<br />
<br />
<strong>EDIT</strong>: I was able to considerably increase performance by decreasing the sample frequency based on the depth of the sample.</p>

#1ic0de

Posted 29 December 2012 - 09:25 AM



I imagine you'd learn more by making your CPU algorithm fast, than by porting your slow CPU algorithm to OpenCL or shaders.


I guess i'll do that then, there are parts of my code that are screaming for more sse stuff


 
SSE is good, but that's more of a micro-optimization, your fundamental problem is more-likely algorithmic -- in other words, you need to do less work, not the same amount of work more quickly.
 
For example:
 
Are you using Level-of-Detail for far-away landscapes?
Are you calculating/drawing slices that will just get covered by nearer and taller slices?
 
Are you paying attention to how data is moving through the memory hierarchy?
 
Have you read anything about the techniques that were used to achieve Commanche/Delta Force/Outcast? I know I've read whitepapers or blog posts about them at one point.
 



All slices are sampled but are discarded before being drawn if they are hidden by a taller slice, I tried doing a fast single channel sample just for the height lookup but my sse version was just as fast and i was just making it slower. LOD is probably a good idea Ill look into that. I know Comanche had a shorter render distance and didn't use any filtering but then again I ran it on a 25mhz 386sx just as fast.

PARTNERS