当前位置: 首页 > news >正文

用Babylon.js 滑动屏幕画图形,签字等

介绍

在上篇文章中我们已经了解到了该游戏引擎的基本搭建过程。比如灯光,摄像头,场景、事件监听等。这里我就不做多介绍。运用以上知识点。我们此时做一个小游戏画图。

效果图

源代码

1.先监听事件是否碰撞到了画板

2.然后判断动作,手指按住屏幕,松开屏幕,滑动屏幕。

3.将点坐标存储起来,将所有线存储起来

4.滑动屏幕时,先把线删除掉,然后根据存储的点坐标重新连线,防止每次重复画线。

5.松开屏幕则将存储的点与线重新创建一个数组存储。

核心代码如下:

var points = []; // 存储所有点的位置
var lines = []; // 存储所有线段的模型
let allData = [{ lines: [], points: [] }] // 所有数据
points = allData[0].points
lines = allData[0].lines
let isDown = false // 是否按下
let isEnd = false
// 对场景添加鼠标点击事件
scene.value.onPointerObservable.add((eventData) => {// 射线投射,用于检测鼠标点击的是场景的哪一部分var ray = scene.value.createPickingRay(scene.value.pointerX, scene.value.pointerY, BABYLON.Matrix.

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • [云原生]三、Kubernetes(1.18)
  • 论文阅读:Most Probable Densest Subgraphs
  • 二手车交易系统开发设计源码及功能解析
  • M21170G-12
  • Unity射击游戏开发教程:(31)制造一定追踪行为的敌人
  • 使用QNetworkAccessManager实现FTP上传下载功能
  • 反序列化靶机实战serial(保姆级教程)
  • jupyter for c++
  • java进阶 CompletableFuture
  • Python 设计模式之工厂函数模式
  • stem32江科大自学笔记
  • nodeJS的一点个人总结
  • C语言time库
  • linux shell 脚本 之 getopt
  • 【Mysql】第一章 (环境配置)
  • 【140天】尚学堂高淇Java300集视频精华笔记(86-87)
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • 【每日笔记】【Go学习笔记】2019-01-10 codis proxy处理流程
  • 【刷算法】求1+2+3+...+n
  • 10个确保微服务与容器安全的最佳实践
  • 11111111
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • CentOS从零开始部署Nodejs项目
  • ECS应用管理最佳实践
  • es6--symbol
  • Essential Studio for ASP.NET Web Forms 2017 v2,新增自定义树形网格工具栏
  • express + mock 让前后台并行开发
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • JavaScript创建对象的四种方式
  • Java面向对象及其三大特征
  • KMP算法及优化
  • mysql外键的使用
  • opencv python Meanshift 和 Camshift
  • React-flux杂记
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • 得到一个数组中任意X个元素的所有组合 即C(n,m)
  • 基于组件的设计工作流与界面抽象
  • 区块链共识机制优缺点对比都是什么
  • 如何胜任知名企业的商业数据分析师?
  • 腾讯优测优分享 | 你是否体验过Android手机插入耳机后仍外放的尴尬?
  • MiKTeX could not find the script engine ‘perl.exe‘ which is required to execute ‘latexmk‘.
  • d²y/dx²; 偏导数问题 请问f1 f2是什么意思
  • ionic异常记录
  • ​2021半年盘点,不想你错过的重磅新书
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • # include “ “ 和 # include < >两者的区别
  • #NOIP 2014#Day.2 T3 解方程
  • $.each()与$(selector).each()
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (阿里巴巴 dubbo,有数据库,可执行 )dubbo zookeeper spring demo
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(七)
  • (篇九)MySQL常用内置函数
  • (十)DDRC架构组成、效率Efficiency及功能实现
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (转)IIS6 ASP 0251超过响应缓冲区限制错误的解决方法