hugp1973

 
 

常用链接

  • 我的随笔
  • 我的评论
  • 我参与的随笔

留言簿(4)

  • 给我留言
  • 查看公开留言
  • 查看私人留言

随笔档案

  • 2013年2月 (1)
  • 2011年6月 (1)
  • 2011年4月 (2)
  • 2008年12月 (1)
  • 2008年11月 (2)
  • 2008年10月 (1)
  • 2008年4月 (2)
  • 2008年3月 (2)
  • 2008年2月 (2)

文章分类

  • 引擎开发历程 (rss)
  • 联系方式 (rss)

友情链接

  • Lomax
  • wjk98550328
  • 风行者

搜索

  •  

最新评论

  • 1. re: Adobe Photoshop 剪贴图像太大,不能输出
  • 有没有具体一些的操作步骤
  • --阿范德萨
  • 2. re: 完成了dx9下面的FXAA
  • 我在dx9下实现了fxaa,但我发现不同等级的效果几乎无差别。
    楼主是否知道为何?
    而且还有一个现象,在某些机器上设置的宏等级越高,采样次数也应相应增高,但该机器帧率却也会越高。
  • --harveys
  • 3. re: 完成了dx9下面的FXAA
  • @hgp1973
    搞好了,是参数的问题,像素偏移量过大了呵呵~
  • --Q
  • 4. re: 终于完成了通过渲染到缓冲区生成地形静态阴影
  • 评论内容较长,点击标题查看
  • --Q
  • 5. re: 完成了dx9下面的FXAA
  • 在最后渲染的缓冲区作为纹理进行fxaa时候,在dx9中,要注意纹理矩阵在x,y上个需要偏移0.5个像素
  • --hgp1973

阅读排行榜

  • 1. 出现 error LNK2005: "void * __cdecl operator new(unsigned int) 的一种解决方法(4983)
  • 2. Adobe Photoshop 剪贴图像太大,不能输出(2846)
  • 3. unity3d 开发花屏问题解决(2339)
  • 4. 终于解决从maya中导出骨骼动画的问题.(1979)
  • 5. 终于把实例化技术添加到了渲染引擎中(1814)

评论排行榜

  • 1. 终于完成了通过渲染到缓冲区生成地形静态阴影(8)
  • 2. 终于把实例化技术添加到了渲染引擎中(6)
  • 3. 完成了dx9下面的FXAA(5)
  • 4. 终于完成了粒子特效编辑器的界面编程工作(3)
  • 5. Adobe Photoshop 剪贴图像太大,不能输出(3)

Powered by: 博客园
模板提供:沪江博客
IT博客 | 首页 | 发新随笔 | 发新文章 | 联系 | 聚合 | 管理

2013年2月19日

unity3d 开发花屏问题解决
    这几天,遇到一个奇怪的问题,用unity3d开发的项目,在电脑上运行正常,在自己手机上运行花屏,换别人的手机测试又正常,后来在发布测试设置中,将 Other settings 下面的 Dynamic Batching 选择去掉,不花屏了。
    
    这到底算谁的bug呢?
posted @ 2013-02-19 10:24 hugp1973 阅读(2339) | 评论 (0) | 编辑 收藏
 

2011年6月21日

完成了dx9下面的FXAA
  这段时间一致在研究延迟渲染,今天突然想换换口味,就看了一下nvidia sdk11中的FXAA的例子,
这个例子本身是用dx11实现的,不过,文档中说也可以在dx9下面实现,于是按照文档中的说明,
花了接近一天的时间,在dx9下面实现了FXAA。
   不过,那篇文章中,在提到dx9的时候,说了下面一段话:

Use the FXAA_HLSL_3 define for DX9, and adjust for the differences in Pixel Coordinate System for DX9 and DX11. FXAA pixel shader input “pos” needs to represent the texel center for a given pixel. Also to alias between sRGB and non-sRGB textures and render targets, use the following.

 

// sRGB->linear conversion when fetching from TEX
SetSamplerState(sampler, D3DSAMP_SRGBTEXTURE, 1); // on
SetSamplerState(sampler, D3DSAMP_SRGBTEXTURE, 0); // off

 

// linear->sRGB conversion when writing to ROP
SetRenderState(D3DRS_SRGBWRITEENABLE, 1); // on
SetRenderState(D3DRS_SRGBWRITEENABLE, 0); // off

我不是太明白,也没有按照这段话去做,结果效果也比较好。

下面是同一场景,打开FXAA和FXAA的截图,看看效果还是很明显的。呵呵。

posted @ 2011-06-21 17:28 hugp1973 阅读(1685) | 评论 (5) | 编辑 收藏
 

2011年4月27日

终于完成了粒子特效编辑器的界面编程工作
     摘要:   阅读全文
posted @ 2011-04-27 17:33 hugp1973 阅读(1133) | 评论 (3) | 编辑 收藏
 

2011年4月25日

终于把实例化技术添加到了渲染引擎中
     摘要:   阅读全文
posted @ 2011-04-25 18:52 hugp1973 阅读(1814) | 评论 (6) | 编辑 收藏
 

2008年12月26日

Adobe Photoshop 剪贴图像太大,不能输出
       为了提高美术刷地表Alpha通道的效率,决定实现一个功能,就是先把整个地图的Alpha图通过剪贴板,拷贝到photoshop,
然后美术可以在photoshop编辑,编辑完毕后才粘贴到编辑器。把alpha图(2048×2048)拷贝到photoshop很快实现了,但是从
photoshop拷贝到编辑器,却总是失败。
      开始以为代码写错了,用word测试,出现Adobe Photoshop 剪贴图像太大,不能输出这句话,然后把图像大小改为1024×1024,
又可以正确粘贴,看来是photoshop有什么设置,导致2048×2048的图像粘贴就有问题。

    最后上网搜索,找到http://www.adobeforums.com/webx/.59b508fa
   
     在注册表    HKEY_CURRENT_USER\Software\Adobe\Photoshop\8.0\
     增加DWORD value MaxClipSize = 0,问题解决。

   
posted @ 2008-12-26 10:41 hugp1973 阅读(2846) | 评论 (3) | 编辑 收藏
 

2008年11月14日

终于完成了通过渲染到缓冲区生成地形静态阴影
        在实现地形阴影生成功能的时候,了解到一般的做法都是通过射线追踪算法来生成.
但是此种方法有两个弊端,一是生成速度慢,而是对于那些有alpha测试的面不好处理.
       后来就想到利用渲染到缓冲区来实现此功能:

       第一步,先完成垂直向下方向光的阴影生成.这种情况下的阴影生成非常简单,
 建立一个正交投影矩阵,直接渲染,就可以了.

      第二步,就比较麻烦了,首先也是建立一个正交矩阵,但是接着要将正交矩阵以灯光方向
倾斜,    如下图所示:然后渲染,

BOOL CCamera::BuildParallelepipedOrthoMatrix(const CVector3D& vDir)
{
      AppCheckSlow(AppAbs(vDir.Y)>=CORE_EPSILON);
      SetOrthoMatrix(m_fWidth,m_fNearZ,m_fFarZ);
     m_MatProject.M[2][0]=  m_MatProject.M[0][0]*(vDir.X/(vDir.Y));
     m_MatProject.M[2][1]=  m_MatProject.M[1][1]*(vDir.Z/(vDir.Y));
      return TRUE;
}

       

      第三步,就需要考虑地形的起伏了,也就是说,需要考虑地形高度导致在阴影图中的位置.


       
       
       
       下面是最终效果,感觉应该和wow的差别不大了.呵呵.

   
posted @ 2008-11-14 20:59 hugp1973 阅读(1107) | 评论 (8) | 编辑 收藏
 

2008年11月2日

实现通过渲染到缓冲区进行拾取
         终于完成了通过渲染到缓冲区去进行拾取了。这下在编辑器里面,就可以做到精确到像素级别的选取了。
什么动画模型呀,带alpha 测试的花花草草呀,全部不在话下。不过,不支持alpha 混合的物体选取,如粒子,
这个到时候考虑通过包围盒实现选取,呵呵。
        
       选择树枝缝隙下的栅栏。


      此时拾取渲染缓冲区数据
       

       下一步考虑用此方法实现高质量,高效率的生成地形阴影。
posted @ 2008-11-02 13:36 hugp1973 阅读(786) | 评论 (1) | 编辑 收藏
 

2008年10月23日

出现 error LNK2005: "void * __cdecl operator new(unsigned int) 的一种解决方法

        今天用vs2005打开一个以前的项目,编译时出现了下列错误:

1>uafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" (??2@YAPAXI@Z) 已经在 core.lib(LogManager.obj) 中定义
1>uafxcwd.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new[](unsigned int)" (??_U@YAPAXI@Z) 已经在 core.lib(ConfigIniManager.obj) 中定义
1

     首先当然是google一下,查到一个网页http://support.microsoft.com/?scid=kb;zh-cn;148652

里面有两种解决方案。我正准备尝试用那两种方法来解决。后来想到我的项目以前都是能够编译的。

后面又没有对代码进行任何修改。只是重新装系统之后,没有安装vs2005的sp1,难道是这个导致的吗?

于是装vs 2005 sp1,重新编译,通过。
posted @ 2008-10-23 15:25 hugp1973 阅读(4983) | 评论 (2) | 编辑 收藏
 

2008年4月7日

终于解决从maya中导出骨骼动画的问题.
posted @ 2008-04-07 20:56 hugp1973 阅读(1979) | 评论 (1) | 编辑 收藏
 
VS 2005 键盘映射方案消失后的一种解决方案
        今天在安装2008年3月份的dx skd之后,vs2005 的键盘映射方案全部消失,首先尝试 工具->导入和导出设置->重置所有设置,
问题没有解决.然后通过光盘修复,问题依旧,最后卸载了vs2005,然后重新安装,问题还是没有解决.
        最后尝试着安装了vs2005 的server pack1,问题终于得到解决.
posted @ 2008-04-07 20:33 hugp1973 阅读(733) | 评论 (0) | 编辑 收藏
 
仅列出标题  下一页