自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

coder

驽马十驾,功在不舍,一步步走,希望能把图形学做好

  • 博客(1393)
  • 资源 (1)
  • 收藏
  • 关注

原创 二,几何相交-5,BO算法实现--(2)事件队列

那么,在1+4相交这个事件发生后,线段4和线段3相交,所以要加入3+4这个事件,放入优先队列中,那么优先级在哪里呢?从左向右,应该是在线段6的左端点的右边,以及线段1的右端点的左边,所以优先队列改为6左端点->3+4->1的右端点。在1+4相交这个事件以前,线段3和线段4不相邻,具体来说,从上到下是线段4->线段1->线段3,从时间轴上看应该是1+4交点->6左端点->1的右端点。事件队列用的数据结构是优先队列。

2024-04-16 08:37:01 176

原创 2024年4月15日-4月21日(RHI模块源码抄写)

当然,除了扣税,这哥们也挣了6万多。2024年4月15日–4月21日,计算几何(2e2-2f2),数字图像处理(6.1-7.2)+vc图像处理每天一例,测量学基础(6.5-7.3),ue rpg(p214-p218),ue底层渲染(4b9-5a2),osg视频一个小执行,slam一个小执行,其余时间均进行ue源码。周五:计算几何(2e2-2f2),数字图像处理(7.2)+vc图像处理每天一例,测量学基础(7.3),ue rpg(p218),ue底层渲染(5a2),osg视频一个小执行,slam一个小执行,

2024-04-15 18:31:28 146

原创 2024年4月计划(全面进行)

2024年4月29日–5月5日,计算几何(2g3-2h1),数字图像处理(9.1-9.5)+vc图像处理每天一例,测量学基础(8.2-9.2)+数字测图技术(1.1),ue rpg(p208-p212),ue底层渲染(4B11-5A4),osg视频一个小执行,slam一个小执行,其余时间均进行ue源码。这个月计划定得太短了,原因是有以前的同事内推ue岗位,谈薪水到北京三万五+可能的原始股份,所以犹豫不决了,当然,最后鉴于他们是小公司,坑太多,决定放弃了,还不如自己立足岗位,同时业余搞搞UE独立游戏。

2024-04-15 09:26:19 176

原创 ue4打包多模块

首先,每个模块,包含插件内的模块在内,都要用IMPLEMENT_MODULE(类名, 模块名)的方式,模块名就是带.build.cs的第一个单词。这里,CoreOne和CoreTwo是工程里的多模块,myplugin和otherM是插件里的多模块。打包中要考虑到target.cs,将工程中相应的模块打包进去。build.cs里就说了这个模块该怎么用,用c#编写。以工程中的一个模块CoreOne为例。再以插件中的一个模块otherM为例。加上一个蓝图能调用的类,用以测试。找到打包位置,双击打开。

2024-04-11 09:07:18 817

原创 2024年4月8日--4月14日(全面进行)

当然,也要把ue继续进行着。ue的rpg和底层渲染,以及渲染模块的源码抄抄。因为ue的工作太难找了,找到也让你降薪,索性不考虑跳槽了。如果只搞ue独立游戏,均衡不了工作和底层的学习,浮于表面,丧失竞争力。本周计划:ue rpg(p211-215),ue底层渲染(p4b8-p5a1),计算几何(02E1-2e3),测量学基础(6.5-7.3),vc图像处理每天一例,加入slam14讲,并优先进行ue rpg和slam14讲两项。先对于计算几何,图像处理,测量学基础,slam进行。不用着急,蚕食即可。

2024-04-08 08:33:39 190

原创 ubuntu20.04打不开终端的解决方法

如果需要英文,则切换到地区Unit states,语言美国英语,在setting里,改变地区中国,语言chinese,即可。重启后不选择保留旧文件。搜索了下,各种都有。

2024-03-28 08:51:12 115

原创 9,图像转置

即宽高的大小互换,像素的x坐标和y坐标也互换。//指向原DIB第j行i列的像素的指针。//指向转置DIB第i行j列像素的指针。//指向转置图像对应像素的指针。//针对图像该行的每列进行操作。//针对图像每行进行操作。//新图像每行字节数。//指向原像素的指针。

2024-03-27 09:09:27 151

原创 二,几何相交-5,BO算法实现--(1)退化情况

(4)有四条线段分别两两相交,其中这两个交点同时过扫描线。(1)扫描线与线段垂直,即该线段的左右端点同时达到扫描线。右边是从上到下四种退化情况,(其中四,五个图是一种情况)(2)一条线段的左端点和另一条线段的右端点相交。(2)两条线段搭接,即,有无数个交点。其中,左下三种从左到右分别是。(1)两条线段的右端点相交。(3)两条线段的左端点相交。上图是退化情况,不考虑。(3)多条线段交于一点。

2024-03-27 08:19:14 153

原创 2023年3月25日--4月7日(全面进行10小时,合计2613小时,剩余7387小时)

ue的rpg和底层渲染。因为ue的工作太难找了,找到也让你降薪,索性不考虑跳槽了。如果只搞ue独立游戏,均衡不了工作和底层的学习,浮于表面,丧失竞争力。本周计划:ue rpg(p205-209),ue底层渲染(p4b4-p4b8)周一:ue rpg(p205),ue底层渲染(p4b4)周二:ue rpg(p206),ue底层渲染(p4b5)周三:ue rpg(p207),ue底层渲染(p4b6)周四:ue rpg(p208),ue底层渲染(p4b7)周五:ue rpg(p209),ue底层渲染(p4b8)

2024-03-25 18:50:24 222

原创 2024年3月18日---3月24日(全面进行,本周10小时,合计2613小时,剩余7387小时)

当然,也要把ue继续进行着。如果只搞ue独立游戏,均衡不了工作和底层的学习,浮于表面,丧失竞争力。计算几何(2e2-2f2),数字图像处理(5.6-7.1)+vc图像处理每天一例,测量学基础(6.3-6.6),ue rpg(p202-p206),ue底层渲染(4b2-4b6),osg视频一个小执行,其余时间均进行公司源码。计算几何(2e2),数字图像处理(5.6)+vc图像处理每天一例,测量学基础(6.3),ue rpg(p202), ue底层渲染(4b2),osg视频一个小执行,其余时间均进行公司源码。

2024-03-18 06:58:31 232

原创 8-图像缩放

height的内存,再分别赋值即可。//循环变量(像素在新图中的坐标)//指向缩放图像对应像素的指针。//计算放缩后的图像宽度和高度。//暂时分配内存,以保存新图像。其实,就是开辟一个zoom。//像素在原DIB的坐标。//指向原像素的指针。

2024-03-14 19:14:35 662

原创 二,几何相交---4,BO算法---(4)可能的三种情况

第三种情况,经过e和f的交点,状态pred->e->f->suc,变成pred->f->e->suc,这时候pred和f可能相交,e和suc也可能相交,需要分别做相交测试。第二种情况,经过线段e的右端点,状态pred->e->suc,变成pred->suc,这时候prd和suc可能相交,进行相交测试。第一种情况,加入线段e的左端点,那么原来的状态pred->suc变成pred->e->suc。相交测试也简单,对两线段的4个端点,做四次toleft测试即可。

2024-03-14 18:41:38 210

原创 二,几何相交---4,BO算法---(3)数据结构

数据结构分两块,一个是某一时间状态的局部相交线段。一个是事件队列,是某一时刻局部相交线段的集合。

2024-03-13 07:49:41 248

原创 二,几何相交---4,BO算法---(2)比较和排序

在某一时刻x=t,扫描线从左到右时,一部分线段会与扫描线相交,此时此刻,线段可以分成高低顺序,那么对于给定两条线段,是如何变化的呢?有两个端点,左端点和右端点,2,在右端点右边,仍然也只有一条线段与扫描线相交,1,在左端点左边,只有一条线段与扫描线相交,3,在左端点之间,扫描线与两条线段都相交。

2024-03-11 19:09:05 196

原创 2024年3月11日-3月17日(全面进行,10小时,合计2603小时,剩余7397小时)

ue的rpg和底层渲染。如果只搞ue独立游戏,均衡不了工作和底层的学习,浮于表面,丧失竞争力。计算几何(2d2-2e2),数字图像处理(5.2-5.6)+vc图像处理每天一例,测量学基础(6.2-6.5),ue rpg(p198-p202),ue底层渲染(4b1-4b5),osg视频一个小执行,其余时间均进行公司源码。计算几何(2e2),数字图像处理(5.6)+vc图像处理每天一例,测量学基础(6.4.2),ue rpg(p202), ue底层渲染(4b5),osg视频一个小执行,其余时间均进行公司源码。

2024-03-11 09:24:14 344

原创 二,几何相交---4,BO算法---(1)接近性和可分离性

3,从左向右扫描线只需要观察每个线段的两个端点和一些可能的相交点。1,如果一条直线(比如竖直)可以分开两个线段,则这两个线段不相交。2,只需要观察与隔离线相交的几个线段。

2024-03-08 08:25:21 174

原创 7,图像镜像变换

水平镜像就是x=图像宽度-原来的x,垂直镜像就是y=图像高度-原来的y。//计算该像素在原DIB中的坐标。//计算该像素在原DIB中的坐标。//暂时分配内存,以保存新图像。//暂时分配内存,以保存新图像。在构造函数中,读取文件后,调用。//指向复制区域的指针。//指向复制区域的指针。

2024-03-06 19:24:19 327

原创 二,几何相交----3.线段相交测试

则可以使用burteforce两两测试,使用四次toleft即可。比如,线段(a,b)和线段(c,d)相交,必然线段的两个端点在另一个线段的两侧。这样时间复杂度就是成为了o(n2)其实,时间复杂度可以降低到o(nlogn+i),i是交点个数。将与X轴平行的线段扩展到一般平面上的线段。

2024-03-06 09:14:57 103

原创 6,图像平移

如果dstX = srcX + deltaX,dstY = srcY + deltaY,那么,将(dstX,dstY)的位置赋值(srcX,srcY)的像素。其余的可以暂时为白色。//判断是否在新图像范围内,如果不在,则直接赋值255。//初始化新分配的内存,设定初始值为255。//计算该像素在原DIB中的坐标。//暂时分配内存,以保存新图像。在初始化时,加载后,调用即可。//指向原图像的指针。//图像每行的字节数。//复制平移后的图像。onDraw()不变。

2024-03-05 08:47:58 281

原创 二,几何相交----2,区间相交检测IID

3,线性扫描,从小到大,根据模式判断是否相交,假设不相交,则应该是LRLR的模式,即首尾相连;如果有LL或者RR,则相交。对于空间的线段是否相交,假设都是与x平行,则需要三步。时间复杂度是nlog(n),在第二段排序上。1,对各线段左右端点设置为L,R标志。2,从小到大进行排序。

2024-03-04 18:36:21 146

原创 2024年3月4日-3月10日(全面进行,17小时,合计2593小时,剩余7407小时)

ue的rpg和底层渲染。如果只搞ue独立游戏,均衡不了工作和底层的学习,浮于表面,丧失竞争力。计算几何(2c1-2d3),数字图像处理(4.1-5.1)+vc图像处理每天一例,测量学基础(4.3-6.1),ue rpg(p193-p197), ue底层渲染(5A3-5A7),osg视频一个小执行,其余时间均进行公司源码。计算几何(2c1),数字图像处理(4.1)+vc图像处理每天一例,测量学基础(4.3),ue rpg(p193), ue底层渲染(5A3),osg视频一个小执行,其余时间均进行公司源码。

2024-03-04 08:10:59 216

原创 2024年3月计划

如果只搞ue独立游戏,均衡不了工作和底层的学习,浮于表面,丧失竞争力。2024年3月4日–3月10日,计算几何(2c1-2d3),数字图像处理(4.1-5.1)+vc图像处理每天一例,测量学基础(4.3-6.1),ue rpg(p193-p197), ue底层渲染(5A3-5A7),2024年3月11日–3月17日,计算几何(2d4-2e),数字图像处理(5.2-5.6)+vc图像处理每天一例,测量学基础(6.2-6.5),ue rpg(p198-p202),ue底层渲染(5A8-5A12),

2024-03-04 08:00:24 197

原创 二,几何相交----1,预备------(4)IEU整数元素唯一性

IEU是EU的一个特例,元素都是整型的,计算复杂度也是o(nlogn)

2024-02-29 09:12:17 113

原创 5,水平百叶窗和垂直百叶窗

将宽度设置为若干份,开始显示时若干个起始线,每个起始线间隔相同的距离。显示过程中,每次各个起始线同时向下(或向右)显示一行(或一列)图像,直到图像显示完毕。

2024-02-28 19:59:47 130

原创 二,几何相交-----1,预备---(3)MaxGap最大缝隙

2,如果距离比较悬殊,则很明显有空桶,则剔除空桶后,前一个桶的最后一个元素和后一个桶的第一个元素之间就有若干个桶的距离。而同一个桶内的相邻元素之间的缝隙是小于一个桶的,所以成立。2,借助散列表,将[lo,hi)均匀分配到0到n-2,共n-1个桶中,而最大值hi放到第n-1个桶内。4,将每个桶的最后一个元素和下一个桶的第一个元素取出,对这些元素找最大的缝隙,即为maxGap。1,假如是相对均匀,每个桶一个元素,正好,从小到大把各个数都取出,计算这n个值两两之间的差距。如上图所示,最大缝隙用到了散列表,

2024-02-28 19:36:37 161

原创 4,图像中间扩张

其实就是分成两部分,再用sleep(),类似于动画效果。

2024-02-27 19:32:35 206

原创 二,几何相交---1,预备---(2)MinGap最小缝隙

最小缝隙顾名思义,找到相邻的两个元素的最小缝隙。类似于EU,先进行排序,然后两两比较相邻的差值,得出最小的那个。不妨想下,如果差值为0,则元素不唯一;如果差值不为0,则元素唯一。所以,可以把EU问题归结到到mingap,时间复杂度o(nlogn)

2024-02-27 18:48:49 130

原创 3,设备无关位图显示

/此函数只能保存经处理后宽度高度均没有改变大小的图像。

2024-02-26 19:53:14 757

原创 二,几何相交---1,预备--(1)元素唯一性EU

先通过o(nlogn)的时间复杂度排序(上下界都是o(nlogn),再比较相邻的两个元素即可。如何获取数组中元素的唯一性?

2024-02-26 19:15:25 116

原创 2024年2月26日-3月3日(全面进行+收集免费虚幻商城资源,本周15小时,合计2576小时,剩余7424小时)

依旧按照月计划进行。

2024-02-26 08:16:44 113

原创 一凸包----------12,分而治之(2)

进行zigzag,如果一侧的顶点前驱和后继不是同时toleft,或者toleft,则继续找它的后继(或者前驱)。如果前驱和后继的toleft同号了,则反向计算。根据以前的方法,很可能认为是两个子凸包上顶点与上顶点相连,下顶点与下顶点相连,形成两条支撑线,缝合成一个新的凸包。在上节中,两部分子凸包有重合的部分,不简洁。这一节是沿着某个方向,子凸包不重叠,如下图。左边的子凸包的最右侧的点和左侧子凸包的最左点开始连线。这样就得到了上边的支撑线,同理,可以得到下边的支撑线,缝合成一个新的凸包。

2024-02-21 18:48:57 131

原创 一,凸包----11,分而治之(1)

对于第二种情况,如下图所示,仍然按照toleft,将凸包P2极点中的st部分保留(逆时针),将ts部分抛弃,并将st部分的极点和p1中的极点,仍然按照以公共核为中心,逆时针按照极角的大小,形成新的顶点集合。对该顶点集合再次使用Graham scan算法,形成新的凸包。1,确定公共核,该点在其中一个顶点内,设置为重心,可以任意三点的中心线交点获得重心(不用管总共多少顶点),这样,就可以以该重心点为准,按照逆时针的极角排序,获取该预处理后的顶点,根据Gramham scan算法,获取该部分凸包的顶点。

2024-02-20 08:50:01 203

原创 一,凸包-----10,GrahamScan分析

如果一共有N个顶点,初始时S栈有两个点,T栈是N-2,那么A = 2 + 2*(N-2)= 2N-2,也是O(n)2,假设初始点是Y轴负值无穷远处,则Presort,可以得知是从右到左,依次入栈,然后通过ToLeft可以获取上凸包8->7->2->1。3,同样,假设初始点是Y轴正值无穷远处,则Presort,可以得知是从左到右,依次入栈,然后通过ToLeft可以获取上凸包1->4->8。内部各边不相交,(虚线是预处理角度部分,紫色是回溯部分,黄色是判断但是没有入栈部分)所以,不会超过3n,即O(n)

2024-02-19 09:28:23 295 2

原创 2024年2月19日-2月25日(全面进行+收集免费虚幻商城资源,20小时,合计2561小时,剩余7439小时)

试试ue4 rpg+a,rpg+b的方式。

2024-02-19 08:26:07 374

原创 可以每小时按照抄写100行源码+1个10分钟左右的视频教程的方式进行

经过检验,这样的学习还是很饱和的。

2024-02-16 19:55:16 264

原创 一,凸包------9,Graham Scan:正确性

如果当K>3时,比如由点1-9组成兔凸包后,判断10号点是否凸包,则由点8和点9组成的直线,根据toleft,判断点10是在左侧(绿色区域)还是右侧(蓝色区域),如果在左侧,则说明10号点是新的极点。从1号点是通过先下后左找到的极点,2号点是从1号点为顶点,对角度排序的最小的点,可知,1号点和2号点必然是极点,最差也会和新的点组成个三角形。如果10号点在右侧(蓝色区域),说明9号点在1,8,10三个点组成的三角形内,必须剔除掉,依次类推,必然过10号点有一条原凸包的切线,如下图所示。

2024-02-06 07:35:39 144

原创 2,cdc放缩位图

类似地,用pDC->StretchBlt来缩放,只是加上了两个参数,原始位图的宽高。//将内存设备环境复制到真正的设备环境中。//将位图选入内存设备环境。//CBitmap对象。//创建内存设备环境。

2024-02-05 19:10:17 375

原创 1,CDC显示位图

BitBlt(指定绘制区域的x坐标,指定绘制区域的y坐标,指定绘制区域的宽度,指定绘制区域的高度,指向要复制位图所在的CDC对象指针,指定原位图要绘制区域的左上角X坐标,指定原位图要绘制区域的左上角Y坐标,指定绘制方式)这个倒是简单,建立一个MFC工程,加一个图片当做资源文件。//将内存设备环境复制到真正的设备环境中。//将位图选入内存设备环境。//CBitmap对象。在OnDraw()调用。//创建内存设备环境。

2024-02-05 19:02:34 309

原创 一,凸包-----8,Graham Scan:实例

继续,从S栈的栈顶元素4和次栈顶元素3取出,画一条线(3,4),弹出T栈顶元素5,根据toleft,发现5在线段(3,4)的右侧,不符合条件,将4从S栈顶弹出。继续,从S栈的栈顶元素5和次栈顶元素3取出,画一条线(3,5),弹出T栈顶元素6,根据toleft,发现6在线段(3,5)的右侧,不符合条件,将5从S栈顶弹出。依次类推,从S栈的栈顶元素3和次栈顶元素2取出,画一条线(2,3),弹出T栈顶元素4,根据toleft,发现4在线段(2,3)的左侧,符合条件,将4压入S栈顶。

2024-02-05 08:20:39 294

原创 2024年2月5日-2月18日(全面进行+收集虚幻引擎免费资源,25小时,合计2541小时,剩余7459小时)

7:45–计算几何01H。

2024-02-05 07:44:46 189

OSG程序设计教程.pdf

osg入门教材,对于初学者很有帮助,是3D引擎OSG的一本好书

2014-07-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除