总要有人来改变世界的,为什么不能是你呢
摘要: 因为工作需要,又倒腾起了WebAssembly,这次主要探索(解决)的问题是Array类型数据的传递 经过咨询以及与ChatGPT的沟通,目前有了如下三种方案: 1.通过类型化数组传递 1 //c++ 2 double EMSCRIPTEN_KEEPALIVE add(const double po 阅读全文
posted @ 2023-02-26 20:01 桔子桑 阅读(345) 评论(0) 推荐(0) 编辑
摘要: 新开的公众号,发布了一篇文章《音乐播放器(你想要的这里都能找到)》 这篇博客就简要说一下开发过程中细则: 1.技术选型 vue 2.x aplayer 可以看出,最新版本中,我已经在这个项目中写了两个插件了,针对不同的网站 2.播放器组件的选择 我之前有选择过vue-player作为插件的音频组件, 阅读全文
posted @ 2021-12-11 15:12 桔子桑 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 距离上一次发博客已经快整一年了 接触了一些新东西,但是总感觉并不是那么的有新意,值得去写一篇博客来阐述其中的点点滴滴 而且,其中的一些技术细节,就是越发感觉没有发的必要,代码太长,而且都是可以去查api文档,或者一些原理性的东西,相信原始资料更可靠 但是我觉得一些思路,一些初衷还是应该值得分享的,但 阅读全文
posted @ 2021-12-11 11:49 桔子桑 阅读(79) 评论(0) 推荐(0) 编辑
摘要: 我们通常会遇到不同的场景需要不同的相机视角,例如:第一人称、第三人称。 第一人称的话,可以将输入控制脚本挂载在Camera上,直接控制Camera的position和rotation来实现; 对于第三人称,实际上我们控制脚本是用来控制场景中人物的动作的,所以此时我们需要根据人物的姿态的改变对相机姿态 阅读全文
posted @ 2021-01-17 19:29 桔子桑 阅读(903) 评论(0) 推荐(0) 编辑
摘要: 接触3D/Webgl这么久,其实一直有个做款游戏玩玩的想法的。 然后这两天看了下layabox的官网(引擎示例:https://layaair2.ldc2.layabox.com/demo/?category=3d&group=material&name=PBRStandardMaterialDem 阅读全文
posted @ 2021-01-16 23:31 桔子桑 阅读(1269) 评论(0) 推荐(1) 编辑
摘要: 最近的一个项目,主要功能就是一些表格页面 + 图形展示的页面(react); 表格页面就不多说了,图形展示页面分两个: 1.二维图形显示实际场景中元素的布局,并且每个元素可以进行交互 这一块我用pixi.js写的: 图层1中,用 PIXI.Graphics 来绘制元素体块,并为每个元素添加了 单击/ 阅读全文
posted @ 2020-12-21 01:01 桔子桑 阅读(539) 评论(0) 推荐(0) 编辑
摘要: 前天晚上,鲫鱼大佬在群里发了一段3D引擎的效果视频,其中有一个效果就是clip,我当时想着clip应该算点到面的距离也能做吧,就顺口问了一下,鲫鱼大佬说: 顺着这个思路想了一下,确实,用点积的话,更容易判断左右两边,于是刷刷刷写了一个demo,奉上代码: const geometry = new T 阅读全文
posted @ 2020-11-22 23:13 桔子桑 阅读(435) 评论(0) 推荐(0) 编辑
摘要: 最近一直在做一个给建筑绘制描边(主要是墙体的侧棱)的解决方案,虽然three.js内置有EdgesGeometry可以根据现有mesh的Geometry生成不带斜线的线框,但是在PC端lineWidth是不能生效的,这是因为受限于windows平台的Direct3D,所以在PC端通常的解决方案是通过 阅读全文
posted @ 2020-10-31 15:20 桔子桑 阅读(400) 评论(0) 推荐(0) 编辑
摘要: 这里记录一下自己关于这方面的一些想法: 1.项目架构 针对一个实时编辑/预览的可视化项目,那么至少会由两个模块组成(编辑模块、预览模块),如下图所示: 软件设计中一个重要原则就是:低内聚高耦合。 大家可能都做过业务逻辑上的模块化开发,但是今天这里说的是页面上的模块化开发。 2.如何实现页面的模块化开 阅读全文
posted @ 2020-08-21 22:19 桔子桑 阅读(705) 评论(0) 推荐(0) 编辑
摘要: 首先我们开一个第三人称的项目。 1.新建pawn蓝图类 我们在这个蓝图类根元素下添加了机臂 >相机; 同级下增加了一个pawnMovement。 2.添加到场景并做相机切换事件 我们将这个pawnCamera添加到了场景中,现在场景中有了两个相机,另外我们添加了一个cube,接下来我们在这个cube 阅读全文
posted @ 2020-05-17 00:44 桔子桑 阅读(4554) 评论(2) 推荐(1) 编辑
摘要: 之前的项目,是使用socket来实现h5页面和引擎之间的通信的,但其实有时候有些简单的指令没有必要通过socket来实现,毕竟socket还存在一个网络时延的问题。 所以,这个时候我们就可以直接事先双方定义好的函数来实现通信。 1.H5页面事件监听 "object"!=typeof ue||"obj 阅读全文
posted @ 2020-05-14 18:30 桔子桑 阅读(6542) 评论(4) 推荐(2) 编辑
摘要: 在ue4中,往场景中添加一个mesh,可以至少有三种方式: 下面对于点击事件我们一一道来。 写在前面: 新建一个玩家控制器: 开启点击事件。 1.Basic 我们从Basic添加一个cube到场景中,然后点击该cube,右键-->Add Event(最下面)-->OnClicked ; 然后会在打开 阅读全文
posted @ 2020-05-14 11:24 桔子桑 阅读(1988) 评论(1) 推荐(1) 编辑
摘要: 先前使用ue4自带的web brower插件嵌入了网页,但是全屏覆盖网页的时候,网页层劫持了鼠标对场景的操作控制。 之前的项目中为了实现这种透明区域可控,同事采用的是在User Interface-->Widget Blueprint组件中如下布局: 这样确实也实现了所需要的功能,但是可以看到由于四 阅读全文
posted @ 2020-05-12 16:47 桔子桑 阅读(6470) 评论(20) 推荐(2) 编辑
摘要: 五一放假,在家看了一波UE4的视频,也动手写了一点简单的东西。 UE4里面可玩的东西很多,但是我没时间一个一个的去学去看,所以,我将会针对平时的项目需求去学习一些实用性的东西。 今天,就记录一下,在UE4里面如何添加外部H5程序。 1.添加webbrowser插件 打开项目模板这些就不说了,稍微看下 阅读全文
posted @ 2020-05-05 15:48 桔子桑 阅读(12675) 评论(0) 推荐(0) 编辑
摘要: 与其说是webgl,倒不如说是图形学,毕竟语言只是一个工具。 用过three.js或者其他三维库来开发三维程序的都知道,对于标题所指,其实实现起来很简单,拿three.js来说,一段很简短的代码就能实现: 这里也感谢作者和其他开源工作者做出的贡献,因为他们的付出使得我们在web端开发三维程序的门槛大 阅读全文
posted @ 2020-04-25 15:19 桔子桑 阅读(1222) 评论(0) 推荐(0) 编辑