稻草人的麦田

图形技术
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

[导入]马赛克

Posted on 2007-10-17 10:17  稻草人的麦田  阅读(161)  评论(0)    收藏  举报

都是些很简单的算法,入门级的。贴出来勉励自己的落后好了。

原图:

处理后的图:

处理都是在nvidia FX composer里面处理的,不在vc里搞这些东西是因为这个软件处理的很快。代码如下:

   float2 mosAicSize = float2(8,8);
   float2 realXY = float2(IN.texCoordDiffuse.x * 512 ,IN.texCoordDiffuse.y * 256 );
   float2 xyMos = float2( int(realXY.x/mosAicSize.x) * mosAicSize.x,
           int(realXY.y/mosAicSize.y) * mosAicSize.y);
   float2 cxy = float2(xyMos.x/512,xyMos.y/256);
   diffuseTexture = tex2D(TextureSampler,cxy);
  return IN.diffAmbColor*diffuseTexture +IN.specCol;


文章来源:http://songxiaoyu8.blog.163.com/blog/static/208181282007917101792