如何在Unity中对程序进行 Android 真机断点调试

如何在Unity中对程序进行 Android 真机断点调试,第1张

我们在使用Unity开发安卓游戏的时候,虽然可以很方便的在编辑器里直接启动查看运行效果,但是编辑器的环境始终比不上真机显示来的直接,而且有些 *** 作,类似多点触控等等 *** 作,必须要在手机端才能触发,如果我们不想一遍遍的编译apk安装到手机上的话,Unity Remote会是一个很好的选择。

注意:Remote在手机上的运行结果并不能取代打包安装之后运行的结果,他只是将编辑器的显示图像同步到了手机上,并通过手机接收输入而已。所以开发完成之后,还是要按照完整的流程进行测试。

1)使用Unity Remote的第一步是自己的机器上安装Android SDK和你使用手机的驱动。SDK下载地址请自行baidu,手机驱动一般可以在对应品牌的官网找到。这里要注意,如果你的手机系统版本是41以上的,请将SDK中的adb升级至最新版本,目前最新版本为1031,否则在adb连接手机的时候会出现设备始终offline的情况。

上面这些东西全部安装完成之后,检测是否安装正确的方法是通过SDK中adb程序来检测(在SDK目录platform-tools文件夹下),在控制台中进入到adb程序所在的目录后输入 adb devices 命令,如果看到设备正常连接,即所有准备工作安装就绪。

注意:如果你的电脑上装有类似豌豆荚之类的PC端手机管理软件,请在任务管理器中将他们全部关闭,因为类似软件会劫持adb进程导致其无法正常工作。

2)关闭手机wifi(重要),打开手机的USB调试功能,在手机端安装Unity Remote 并运行。

3)启动Unity并在编辑器中直接点击Play,不出以外的话你将会看到手机屏幕上也出现了相同的画面。

上面我们介绍了不打包的情况下怎么在手机上看到运行结果,这毕竟不能代替真正的运行环境。有可能打包发布运行之后还会在手机上出现各种各样的问题,下面我们就将介绍如何在手机程序运行时查看Unity的日志文件。

其实,Unity在Android手机中运行时的所有日志可以通过Logcat捕获到,我们还是可以通过adb工具很方便的在pc上看到游戏运行时打出的Log信息。

1)首先第一步是在保证各种安装环境都正常的情况下链接手机并运行游戏。

2)输入adb logcat -s Unity 即可看到游戏运行过程中通过Debuglog打出的所有日志信息。

GUI特点

GUI的优点:灵活、快速、可视化

GUI组件概要

Canvas(画布)

Render Mode(渲染模式)

Canvas Scaler 组件

Graphic Raycaster 组件

EventSystem (事件系统)

GUI布局组件

The Rect Tool(矩形工具)

Rect Transform (矩形变换组件)

Pivot(中心点)

Anchors(锚点)

GUI核心组件

Button(按钮)

Text (文本)

Image(图像)

Raw Image(原图)

Input(输入)

Toggle(切换)组件

Toggle Group(切换组)

Slider(滑动条)

Scrollbar(滚动条)

Scrollbar Rect(滑动区域)

Panel 面板

UI组件概要—Canvas(画布)

Canvas(画布)是摆放容纳所有的UI元素的区域。画布是一个游戏对象上的某个Canvas Component组件,

并且所有UI组件都要绘制在这个画布里的,脱离画布,UI组件就不能使用。

UI组件概要—Render Mode(渲染模式)

Screen Space-Overlay渲染模式

在Screen Space-Overlay渲染模式下,场景中的UI被渲染在屏幕上(此模式不需要UI摄像机,UI将永远出现在所有摄像机的最前面。)

Screen Space-Camera渲染模式

Screen Space-Camera渲染模式类似于Overlay模式。但在这种渲染模式下,画布被放置在指定相机前的一个给定的距离上,通过指定的相机UI被呈现出来,Camera Setting会影响到UI的实现。

World Space渲染模式

在World Space 渲染模式下,呈现的UI好像是3D场景中的一个Plane(平面)对象。与上面两种不同,Plane不需要面向镜头,可以是面向你喜欢的任意方向。

好了,休息一下, 如果大家对NET比较有兴趣的话 , 可以一起加群一起探讨一起交流

295383988

Unity3D中的地形类似于Maya中使用置换贴图来变形高段数的多边形平面,其原理是自动创建一个中等多边形密度的mesh plane(多边形平面),然后指定一张16bit的灰阶图作为height map(高差图),并根据mesh各个顶点所对应的灰度数值沿着Y轴改变该顶点的高度,形成高低起伏的复杂地形。

Unity3D内置了一套简单的brush(笔刷)工具来方便用户对地形物体的编辑修改。

通过菜单 GameObject > 3D Object > Terrain 可以创建一个Terrain (地形)。

Terrain Settings是对Terrain整体的参数设置面板。

最上面的一排按钮分别用来对地形及植被进行“刷制”的工具面板切换,最右边的 Terrain Setting 面板是针对地形整体的设置,这里挑一些常用的重点的来讲:

按下鼠标左键开始提升地形高度,如果同时按住 shift 键,则降低地形高度直到0。

直接刷出特定高度,按住 shift 键获取某一点的高度。非常适合用来刷出非水平面高度的平整地形,比如山顶或山间的一块平整地面等等。同时如果场景中有水面,由于Terrain不能刷出水平面以下的地形(最低刷到水平面),可以首先将全部地形提升到一定高度,再将水域地形刷低。

相当于光滑笔刷工具

在地形表面上绘制贴图。

首先需要在Textures栏中点击 Edit Textures ,再选择 Add Texture 以添加一层贴图。

在这个“添加地形贴图”面板中我们可以设置一张颜色贴图和一张法线贴图,并指定贴图的重复度。如果检测出颜色贴图含有Alpha通道,就会将这个Alpha通道与作为光滑度的贴图,否则就会出现一个Smoothness参数供我们调节这一层表面的光滑度,此外还提供一个Metallic参数供我们调节这一层表面的金属颜色。

这里的贴图都需要处理成无缝贴图,否则场景中会出现明显的接缝。贴图不需要特别大,因为重复度会被设置得比较高,通常512或者1024分辨率的贴图就可以了。

第一层贴图会默认覆盖整个地形区域,从第二层(从左往右)开始,添加好贴图以后需要在地形上刷出该层贴图的出现范围。

需要编辑各层的贴图设置只需点击 Edit Textures > Edit Texture ,需要删除贴图层就点击 Edit Textures > Remove Texture 。

在地形上刷出树来。

按下鼠标左键开始刷树,按住 Shift 键再刷可以删除已经刷出来的树,按住 Ctrl 键再刷可以删除当前选择的特定类型的树。

在Trees栏点击 Edit Trees ,再选择 Add Tree ,可以添加一个GameObject作为“树”。这个物体可以是任意GameObject,并不一定非要是Tree Object。

然后就可以用鼠标在地形表面“刷”出这类树来了,同时也会出现具体的Settings参数。

我们可以添加多种type的树,然后一层层刷出复杂的森林结构。

同样的,我们也可以点击 Edit Trees > Edit Tree 给树更换GameObject,或点击 Edit Trees > Remove Tree 删除某一层的树。

在地形上刷出细节物体,通常用来做草。

按下鼠标左键开始刷细节物体,按住 Shift 键再刷可以删除已经刷出来的细节物体,按住 Ctrl 键再刷可以删除当前选择的特定类型的细节物体。

在Details栏点击 Edit Details ,再选择 Add Grass Texture ,打开Add Grass Texture面板设置新建“草贴图”的参数:

在Details栏点击 Edit Details ,再选择 Add Detail Mesh ,打开Add Detail Mesh面板设置新建“细节面片”的参数:

以上就是关于如何在Unity中对程序进行 Android 真机断点调试全部的内容,包括:如何在Unity中对程序进行 Android 真机断点调试、Unity中的GUI图形与用户界面、Unity3D自带功能:地形(Terrain)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9402229.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存