张Da夫
码龄10年
关注
提问 私信
  • 博客:195,407
    问答:1,973
    197,380
    总访问量
  • 23
    原创
  • 2,039,184
    排名
  • 48
    粉丝
  • 0
    铁粉

个人简介:有志青年

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:浙江省
  • 加入CSDN时间: 2014-11-23
博客简介:

张Da夫

博客描述:
GameDeveloper
查看详细资料
个人成就
  • 获得200次点赞
  • 内容获得42次评论
  • 获得397次收藏
创作历程
  • 2篇
    2020年
  • 2篇
    2019年
  • 2篇
    2018年
  • 5篇
    2017年
  • 12篇
    2016年
  • 3篇
    2015年
成就勋章
TA的专栏
  • 字符编码
    4篇
  • MySQL数据库
    1篇
  • C#
  • C++
    5篇
  • 汇编语言
  • 大牛之路
    1篇
  • 操作系统
    2篇
  • OpenGL
    1篇
  • 游戏开发
    2篇
  • Unity3D
    3篇
  • Lua
    1篇
  • Graphics
    2篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

174人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Shadow技术-起点

起因项目的Shadow开始出现了问题,有2个BUG报到了我的身上比较薄的Mesh出现了漏光(Light leaking)现象Cube旋转到一定角度,表面出现了“瑕疵”(Shadow Acne)我开始意识到,确实需要一套比较完备、可控的阴影方案了对Shadow的积累目前我对Shadow技术的积累,仅限简单的Shadow Map原理和知道CSM大致的实现方式。在看到前面两个BUG的时...
原创
发布博客 2020.03.17 ·
863 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Camera的Near值对Z-Fighting问题的影响

起因项目测试报BUG,贴花功能在离相机接近500米处开始闪烁从闪烁这个表现看基本断定是Z-Fighting问题,一开始认为是贴花Shader的问题,但是贴花使用的是类似Projector的方式,这种方式在进行ZTest的时候实际上是进行Projector透射的物体的Z进行比较,导致Z-Fighting的话实际上和贴花没有太大关系经过搭建简单场景来看,也是和贴花没关系,本质上还是2个Mesh的...
原创
发布博客 2020.03.15 ·
977 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

可变参数的实现原理

可变参数参数个数可变参数类型可变原理概述由于在函数调用时,参数通过栈进行传递(stdcall、cdecl)而且参数入栈时会按照顺序依次入栈。所以在被调用的函数内,知道了第一个参数的地址就可以根据类型获得其他参数的地址从而获取参数的值.这里需要注意的一点:上面提到的stdcall和cdecl是说明这两种参数都是通过栈传递,但是只有cdecl支持可变参数,因为cdecl由调用者维护栈...
原创
发布博客 2019.07.13 ·
710 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

函数调用过程&栈帧&调用约定

函数调用过程 Procedure参数传递考虑函数调用:func(1, 2)需要把1和2这两个参数进行传递,这里的参数传递可以通过两种方式:1.参数入栈(内存)2.参数传递到寄存器大多数情况下,也是C\C++的默认形式是通过栈进行传递,因为虽然寄存器传递方式快但是寄存器数量有限参数压入栈中(内存),CS:IP指向下一条指令地址需要进行跳转到函数入口就需要进行原地址的保存,这也是通过压入...
原创
发布博客 2019.07.12 ·
675 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

关于Lua的下载以及wlua、luac等文件的解释

  之前学习过一小段时间的Lua,想把Lua集成在自己写的一个小引擎中,但是由于找工作就一直耽误了。现在工作基本稳定后,也需要深入了解一下Lua语言就从官方先下载Lua,结果下载过程很懵逼,下载下来的文件也没ReadMe文件解释都是什么文件,其实这些都是小事,但是至少也收获了一些,所以记录下来。   在Lua官网的下载页面,并没有提供官方的编译好的可执行文件(解释器),好像官方更推荐自己进行编译...
原创
发布博客 2018.03.01 ·
7559 阅读 ·
3 点赞 ·
0 评论 ·
3 收藏

Unity3D开发中热更新为什么不能使用C#的思考

他们说  阅读了网上一些文章,其实使用C#进行热更新是可以的,将需要更新的代码打包成程序集,然后利用反射即可,但是也提到在IOS平台是不行的,至于为什么不行,就不再说了,然后就是推荐Lua作为热更新方案,但是,为啥Lua就行?C#就不行?因为C#是编译型语言,Lua是解释型语言?  好多人都说Lua能热更新,是因为它是解释型语言,不用编译,在运行时能动态解释Lua代码并运行。这种方...
原创
发布博客 2018.02.27 ·
6037 阅读 ·
9 点赞 ·
1 评论 ·
14 收藏

关于3DsMax与Unity坐标轴的若干问题详解

网上有很多叙述关于3DsMax制作的模型导入到Unity3D时如何进行坐标轴处理的方法,大部分只告诉你该如何做,至于为什么也没写。有的解释了,但是解释的完全是错误的。由于我之前解析过FBX文件,所以对其的格式有所了解。针对坐标系转换等等问题结合FBX文件格式进行分享
原创
发布博客 2017.10.03 ·
15032 阅读 ·
5 点赞 ·
4 评论 ·
36 收藏

Ubuntu16.04进行MySQL5.7-deb包的安装

一、安装前  进入MySQL官网下载Ubtuntu版本的MySQL,我选择的是mysql-server_5.7.19-1ubuntu16.04_amd64.deb-bundle.tar 这个包包含了MySQL及各种组件二、依赖关系  MySQL的安装文档强调了以下的依赖关系:MySQL has a dependency on the libaio library. Data directory
原创
发布博客 2017.09.06 ·
2365 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

OpenGL中GL_FRONT_RIGHT、GL_BACK_RIGHT等绘制缓冲的概念

本篇文章主要介绍OpenGL中GL_FRONT_RIGHT、GL_BACK_RIGHT等绘制缓冲的概念
原创
发布博客 2017.08.26 ·
2231 阅读 ·
5 点赞 ·
0 评论 ·
6 收藏

C++中使用sigaction结构体名和函数名冲突的问题

1、某一个类A,有一个无参构造函数,能否使用如下代码建立a对象?(在完美世界的笔试题中遇到过相似问题,《The C++ Programming language》书中也提到过)A a();2、linux信号中有一个sigaction系统调用和sigaction结构体,在使用如下代码:sigaction act;sigemptyset(&act.sa_mask);act.
原创
发布博客 2017.06.19 ·
1169 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

Win10+Ubuntu双系统UEFI启动方式下GRUB消失直接进入Windows以及重装时grub-install致命错误解决方法

Win10+Ubuntu双系统UEFI启动方式下GRUB消失直接进入Windows以及重装时grub-install致命错误解决方法
原创
发布博客 2017.05.01 ·
22225 阅读 ·
5 点赞 ·
5 评论 ·
40 收藏

关于条件变量和互斥锁为何配合使用的思考

最近在阅读《现代操作系统》,看到条件变量部分时非常疑惑条件变量为什么需要互斥锁,书上也没有非常明显解说原因(其实有说,但是我看书不仔细),查阅了一些资料,进行了一些思考。  我的疑惑点在于条件变量为什么需要有互斥锁的配合,我觉得原因有二。  第一点,首先我们要理解条件变量的作用是在等待某个条件达成时自身要进行睡眠或阻塞,避免忙等待带来的不必要消耗,所以条件变量的作用在于同步。条件变量这个变
原创
发布博客 2016.08.23 ·
9123 阅读 ·
13 点赞 ·
4 评论 ·
39 收藏

C语言读取文件中文本模式和二进制模式的区别

一、疑惑  在学习C语言读取文件的时候,首先学习到的是C语言读取文件时分文本模式和二进制模式。给好多人造成疑惑,文件存储时要分类?二进制存储和文本存储完全不相同?对于纯文本必须使用文本模式?对于纯数字必须使用二进制模式?如果你对这些有疑惑,这篇文章适合你,如果你是来看函数时如何使用的,可能你要另寻他处了。二、明白关键一点  任何数据在内存中或者硬盘上的存储都是1、0组成的序列,从硬盘、
原创
发布博客 2016.07.22 ·
6699 阅读 ·
25 点赞 ·
2 评论 ·
62 收藏

回车(CR)与换行(LF), '\r'和'\n'的区别

回车CR和换行LF的区别
转载
发布博客 2016.07.22 ·
5235 阅读 ·
3 点赞 ·
0 评论 ·
8 收藏

关于攻读计算机研究生

就我自己的理解,谈谈我对读研和软件学院的看法,不妥之处一笑了之即可。  如果你有实际开发工作经验,感觉自己的水平和实力进入了一个高原期,迫切需要从理论上提高,那么计算机学院是唯一选择。因为计算机学院才能让你在理论上 更上一层楼。软件学院从教学计划上就没有把你往这方面带。当然能不能更上一层楼最终还是完全取决于你自己。需要特别说明的是,工作经验并不一定等于开发经 验,我见过很多工作2-3年的人
转载
发布博客 2016.07.19 ·
441 阅读 ·
4 点赞 ·
0 评论 ·
6 收藏

C#操作Word导致 “Microsoft.Office.Interop.Word.ApplicationClass”的 COM 组件错误的解决方法

C#操作Word导致“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 组件错误的解决方法首先,要知道在C#中我们是通过调用COM组件来操作Word的,每一个COM组件都要在注册表中进行注册。这个问题的出现有2个原因:1、  你的电脑曾经装过Office的不同版本2、  你的电脑曾经同时装过微软的Office和金山的WPS
原创
发布博客 2016.06.03 ·
12265 阅读 ·
2 点赞 ·
0 评论 ·
4 收藏

3D游戏中的物体间碰撞检测,地面的碰撞如何实现的?

发布问题 2016.05.05 ·
2 回答

汇编中有符号与无符号数以及CF,OF标志位的区分

汇编中有符号与无符号数以及CF,OF标志位的区分
原创
发布博客 2016.05.01 ·
23253 阅读 ·
62 点赞 ·
9 评论 ·
115 收藏

汉字编码-区位码、国标码和内码发展和区别以及为什么要加2020H、8080H

当计算机传入中国并开始普及时,首要问题是解决中文编码问题,也就诞生出了GB2312、GBK等等编码方式。而其中的具体实现方式是什么?区位码是什么?国标码是什么?它们如何转换又为什么这么转换?首先来看一看什么是区位码?什么是国标码?什么是内码?区位码:        GB2312是一种中文的编码方式,具体是由区位码来实现的。GB2312将所有的汉字编入一个 94*94 的二维表, 行就是
原创
发布博客 2016.02.22 ·
26028 阅读 ·
30 点赞 ·
6 评论 ·
66 收藏

从字符编码的发展历史理解ANSI、GB2312、Unicode、UTF8和UTF16区别

在编程学习的深入后,不可避免的会遇到ANSI、GB2312、UTF8的编码问题,如果不彻底了解他们的区别,都最终会造成一个问题--乱码!例如文件打开乱码,数据库乱码、网页乱码等等各种乱码,这里就通过字符编码发展历史的介绍来分清各种不同的编码。一、ASCII码我们都知道计算机起源于美国,早期的计算机只是用于科学计算,但是在计算机迅速发展时,计算机被要求不仅仅能够进行数值计算,还要进行字符处理
原创
发布博客 2016.02.22 ·
5071 阅读 ·
4 点赞 ·
0 评论 ·
15 收藏
加载更多