学习笔记

  • canvas在3d里的设置
  • 3d物体之间的碰撞
  • canvas在不同系统中如何做到适配

canvas在3d里的设置

需要在canvas里找到worldspace,canvas才能匹配3d的大小,否则在真机的显示中会变得很小

3d物体之间的碰撞

无论是自己导入的模型还是使用unity自带的,碰撞体都必须要有colider组件(里面有几种,选自己合适的即可,以及触碰题一定要有rigidbody组件,创建之后就能有最简单的碰撞了,碰撞体的colider要选好,或者要创建好,不然很容易会有碰撞的很难看的效果(说的就是我的)
自己建的模型如果要实现被点击识别的话,也要给模型创建colider组件才能被识别到

canvas在不同系统中如何做到适配

2021.7.16更新
在项目使用的过程中,发现有的功能需要用到ui的具体位置,同事使用的方法是定死ui所在屏幕的位置,也就是不会根据屏幕的大小而变化的流程,但是为了适配,我使用的方法是对齐的方式,比如左中对齐也即是在不同屏幕中,ui总能找到当前所在环境下的左边中间的位置,然后移动到那个地方,这样是可以解决适配的问题,也能得到很好的体验
但是
这个实现流程会和同事需要实现的功能有所冲突,因为需要用到我摆放好的位置,而且是死的,不能动的
那怎么办呢
和同事商量了一阵子,有很多的解决方案,但是都是两边需要做出牺牲的,比如他改他的实现方法,动态的获得ui所在的位置
或者我改我的对齐方式,但是这样就做不到根据不同的机型进行适配了
最终的解决方案

在canvas组件里设置这个选项,然后把下面的canvasscales的修改为

这样canvas就会根据这个比例去进行等比缩放,ui在canvas里的位置也会相对保持一致
虽然这样也还是会有问题
那就是当机型和这个比例相差太多的时候,比如宽超出太多,就会看得到超出这个视角的内容,长也是一样的
不过我感觉大游戏好像都是这么设计的
因为在不同的机型上进行游戏的时候,都会出现ui之外的视角拉伸的现象
所以这个问题我感觉是基本完美解决了
不知道大佬们有没有其他的解决思路~

加油~以后真的得多看看系统的教学(虽然我估计也不会教这些)
因为这些估计教学也就是一两句带过,不会特意去说明这些的不同会带来的影响有多大~
不过还是得系统的去学习有关使用的思维和方法

同天更新:
由于本人基础不行,刚才和同事讨论的时候,发现了一个真正解决的办法~
(敲黑板)
首先需要科普一下
rect transform
里面有两个布局的方式
第一个有关红色的是对齐,前面也讲过了
当使用alt然后点击你需要的对齐方式的时候,他就会自动对齐到当前尺寸里的部分
第二个就是蓝色的方式
它的中文翻译就是拉伸
这个拉伸在某些需求的时候十分有用
比如当需要一个遮挡布去控制用户无法使用布局里的功能
这个拉伸会自动和canvas的width,height相关联,当canvas的width,height有所变化的时候,使用了拉伸的组件图片的时候会自动识别canvas的width,height,然后自动拉伸
这样就不用让遮挡布还要根据不同的屏幕尺寸去进行判断动态的修改~

unity番外学习笔记-canvas在3d里的设置以及3d物体之间的碰撞相关推荐

  1. Unity超基础学习笔记(二)

    Unity超基础学习笔记(二) 1. 基本数据类型的扩展 之前在K12中学习了一些基本的数据类型,实际上C#支持更多的数据类型.如下: 注意无符号整型数和有符号整型数的表示范围,例如: int 能表示 ...

  2. Unity动画状态机学习笔记

    Unity动画状态机学习笔记 一.建平面,拖人物模型.建状态机.动画导入.拖组件--实现Game时人物动画为等待状态. 二.拖WAIT01.WAIT02.WAIT03.WAIT04--实现按数字1切换 ...

  3. Unity之C#学习笔记(11):静态类型 Static

    前篇链接:Unity之C#学习笔记(10):接口和多态 Interfaces and Polymorphism 静态类型(Static)用一句话概括就是:在程序运行期间只会被创建一份的通用内容,用关键 ...

  4. 【Unity NGUI】学习笔记(二)之英雄攻击和装备武器

    玩魔兽世界的时候,游戏人物可以行走,奔跑,攻击,死亡等等行为,今天继续结合上一个案例[Unity NGUI]学习笔记(一):英雄选择,皮肤更换上给英雄添加动作行为. 一.准备工作 给英雄准备奔跑 攻击 ...

  5. Unity游戏框架学习笔记——03基于观察者模式的事件中心

    Unity游戏框架学习笔记--03基于观察者模式的事件中心 基于观察者模式的事件中心 一如既往指路牌:https://www.bilibili.com/video/BV1C441117wU?p=5. ...

  6. Unity UI Toolkit学习笔记-Runtime UI 案例实践

    Unity UI Toolkit学习笔记-Runtime UI

  7. Unity Cinemachine插件学习笔记,实现单目标和多目标之间切换

    Unity Cinemachine插件学习笔记,实现单目标和多目标之间切换 *版本要求Unity2017.1及以上. 参考资料: [官方] Unity 2017.1正式版发布 Cinemachine插 ...

  8. Unity Cinemachine插件学习笔记

    以下都是转载内容,能够比较直观的学习一些基础内容.现在的Cinemachine更新了许多新的功能,但是Cinemachine插件都ExamplesScences,去看一下官方例子和文档来学习更佳 *版 ...

  9. Unity Cinemachine插件学习笔记,结合Timeline实现简单场景动画

    Unity Cinemachine插件学习笔记,结合Timeline实现简单场景动画 *版本要求Unity2017.1及以上. 参考资料: [官方] Unity 2017.1正式版发布 [Unity] ...

最新文章

  1. sql语句 case
  2. IMAP 称作交互邮件访问协议
  3. 【Groovy】Groovy 语言特点简介 ( 支持 Java 语法 | 支持 Java 虚拟机 | Groovy 语言是动态语言 | Groovy 扩展 JDK | 编译时元编程 )
  4. Java中转发(Forward)和重定向(Redirect)的区别
  5. linux服务器禁止ping和允许ping的方法
  6. b站2020用户画像_B站2020年度动画大选来袭!论引战,还是要看B站
  7. 平台表单默认按钮的使用及效果展示——JEPLUS软件快速开发平台
  8. 带你学 Redis: 基本命令 String 操作(三)
  9. mysql数据库下的所有表字段
  10. python any all
  11. EUV光刻!宇宙最强DDR4内存造出
  12. 简记_高频变压器基础知识(一)
  13. diamond简介和使用
  14. 架构系列---发号器(全局唯一ID生成器)系统设计方案和思路
  15. 苹果说全是假的,市面不存在原装贴膜
  16. Android倒计时实现及Timer和TimerTask的使用
  17. 西安千锋培训python
  18. STM32 通用GPIO模拟I2C实现
  19. 魅族20和魅族20pro的区别 魅族20和20pro参数对比
  20. CSR867x — 使用Sink Configuration Tool配置按键

热门文章

  1. 2023年《计算机工程》最新投稿经验
  2. 【板栗糖GIS】wps—如何修改文档中的批注名称
  3. 江湖再见 Layui
  4. 前端效果积累 | 酷炫、实用3D地球路径飞行效果实现
  5. kangle服务器返回信息为空,kangle API 详细说明
  6. 双均线matlab操作,双均线系统实战法则
  7. 音视频开发编程技术(一):视频编码格式
  8. ACM G - 7 深度优先搜索(DFS)
  9. C#实现在线点餐系统
  10. FreeCAD宏代码建模 老式地漏