Android集成Unity,实现3D看房效果

这篇具有很好参考价值的文章主要介绍了Android集成Unity,实现3D看房效果。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

引子

前几天有人找小编问能不能把3D模型放入到Unity中,再把Unity放入到Android APP中,在APP中实现观看房屋家具的功能,这次小编便来分享一下吧,如果还需要了解Android 集成Unity知识的,可以翻我主页其他文章

演示效果

Android3D观看房屋家具效果演示

资源准备

Unity 3D

Unity 3D官网

Android Studio

Android Studio官网

房屋家具3D模型

3D模型官网

Unity项目

1. 创建一个Unity项目

如下图所示:小编这里用了2021长期支持版本的Unity 3D编译器,创建了一个名为UnityDemo的3D项目 

Android集成Unity,实现3D看房效果,android,unity,3d

如下图所示:这是创建好的UnityDemo 3D空项目

Android集成Unity,实现3D看房效果,android,unity,3d

2. 导入房屋家具3D模型资源

如下图所示:我们先打开Package Manager窗口,然后可以看到自己在Unity 资源商店所下载的资源,找到自己所需要的3D 模型资源,然后点击import,将资源导入到UnityDemo项目中

Android集成Unity,实现3D看房效果,android,unity,3d

如下图所示:这是导入模型资源后的

Android集成Unity,实现3D看房效果,android,unity,3d

如下图所示: 我们打开Free Set场景,场景效果图如下

Android集成Unity,实现3D看房效果,android,unity,3d

3. 添加脚本事件

接下来,我们便是要为其添加触屏旋转事件,这样才能达到我们的展示3D看房的效果 

Android集成Unity,实现3D看房效果,android,unity,3d

CameraController脚本:

using UnityEngine;

public class CameraController : MonoBehaviour
{
    private float rotateSpeed = 0.01f;

    private Camera cam;
    private Vector3 lastPosition;

    void Start()
    {
        cam = GetComponent<Camera>();
    }

    [System.Obsolete]
    void Update()
    {
        // 旋转
        if (Input.GetMouseButton(0))
        {
            Vector3 delta = Input.mousePosition - lastPosition;
            cam.transform.RotateAround(Vector3.up, delta.x * rotateSpeed);
            cam.transform.RotateAround(cam.transform.right, -delta.y * rotateSpeed);
        }

        lastPosition = Input.mousePosition;
    }
}

4. Unity运行演示效果

Unity 3D观看房屋家具效果

5. 修改Unity打包配置信息

如下图所示,在将Unity项目打包成Android 项目之前,我们需要先修改一些配置,我们先将其设置为手机横屏效果

Android集成Unity,实现3D看房效果,android,unity,3d

如下图所示,我们再设置一下最小的sdk支持和最佳SDK支持,然后再把ARMv7和ARM64勾选上,顺便把x86和x86-64勾选上,方便后续可以在模拟器上运行

Android集成Unity,实现3D看房效果,android,unity,3d

6. Unity打包Android项目

如下图所示,我们选择好打包平台进行打包

Android集成Unity,实现3D看房效果,android,unity,3d

如下图所示,这是将Unity项目打包成Android项目之后的文件夹结构

Android集成Unity,实现3D看房效果,android,unity,3d

7. 修改Android项目配置信息

如下图所示,我们先用Android Studio打开Unity刚刚打包出来的项目,修改一下gradle.properties文件

Android集成Unity,实现3D看房效果,android,unity,3d

如下图所示

Android集成Unity,实现3D看房效果,android,unity,3d

8. 生成aar文件

如下图所示,小编这里将我们Unity打包出来的Android项目生成一下aar文件 

Android集成Unity,实现3D看房效果,android,unity,3d

Android项目

1. 创建一个新的Android项目

操作如下图所示:

Android集成Unity,实现3D看房效果,android,unity,3d

2. 将aar放入到Android项目中

Android集成Unity,实现3D看房效果,android,unity,3d

3. 添加字符串配置

<string name="game_view_content_description">Game View</string>

Android集成Unity,实现3D看房效果,android,unity,3d

4. 编写Activity页面

如下图所示

Android集成Unity,实现3D看房效果,android,unity,3d

MainActivity.kt

package com.example.unityandroiddemo

import android.content.Intent
import android.os.Bundle
import android.widget.Button
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {

    private lateinit var btn:Button

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

        btn = findViewById(R.id.btn)

        btn.setOnClickListener {
            val intent: Intent = Intent(this, UnityActivity::class.java)
            startActivity(intent)
        }
    }
}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/btn"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="观看3D模型"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

UnityActivity.kt

package com.example.unityandroiddemo

import com.unity3d.player.UnityPlayerActivity

class UnityActivity : UnityPlayerActivity() {

}

AndroidMainfest.xml

Android集成Unity,实现3D看房效果,android,unity,3d

到此为止,我们便初步完成了,可以运行到真机看看效果了

演示效果

Android3D观看房屋家具效果演示

要是有疑问的话,大家可以加我微信yf1553653788文章来源地址https://www.toymoban.com/news/detail-678928.html

到了这里,关于Android集成Unity,实现3D看房效果的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android集成Unity(二)

    上一篇给大家分享了Android集成Unity,但那一篇解决的是Unity采用mono打包,但Unity到了2020及以上版本时,官方都是推荐il2cpp打包,所以这一篇就补上之前那一篇的短板 Android与Unity页面反复切换,无闪退 Android端: Android Studio(各大版本都可以,区别不大) Unity端:  Unity3D(各大

    2023年04月09日
    浏览(25)
  • Unity 3D PC平台发布|| Unity 3D Web 平台发布||Unity 3D Android平台发布

    PC 是最常见的游戏运行平台。 随着欧美游戏的崛起,PC 平台随之发生游戏登陆大潮。 在 PC 平台上发布游戏的步骤: 打开要发布的 Unity 3D 工程,执行  File  →  Build Settings  菜单命令。 在  Platform  列表框中选择  PC,MacLinux Standalone  选项,在右侧的  Target Platform  下拉列

    2024年02月04日
    浏览(33)
  • 【Unity3D】Android 打包 ④ ( Android 工程打包 | Unity 中导出安卓工程 | Android Studio 打开 Unity 导出的 Android 工程 )

    Android 工程打包 就是将 Unity 项目导出为 Android Studio 项目 , 在 Unity 编辑器中选择 \\\" 菜单栏 | File | Build Settings… \\\" 选项 , 在弹出的 \\\" Build Settings \\\" 对话框中 , 勾选上 \\\" Export Project \\\" 选框 , 然后点击右下角的 \\\" Export \\\" 导出按钮 ; 选择一个导出目录 ; 等待 Android 工程导出 ; 最终导出的

    2023年04月19日
    浏览(33)
  • unity 3d实现各种粒子效果

    直接调整为【Stretched Billboard拉伸/延伸渲染】 控制雨的大小 创建个材质 材质设置 挂载材质 设置延申效果 第一个叫做Speed Scale:通过比较每个粒子的速度,来去决定每个粒子拉伸/延伸的长度 而Length Scale:通过粒子的宽度,来决定粒子的长度 3d粒子大小随机化 颜色也可以设置随

    2024年02月09日
    浏览(50)
  • unity 3d 实现遮挡剔除效果

    目录 声明: 1.首先创建Unilt Shader Graph  2.设置Alpha透明通道 3)添加实心填充效果 4.编辑渲染管线 本教程学习均来自U3D中文课堂麦扣老师 2021版创建步骤: 右击文件夹-create-Shader Graph-URP-Unilt Shader Graph 1)在右侧Graph Inspector的Graph Settings中勾选Alpha Clipping以方便设置Alpha透明通道,并

    2024年01月23日
    浏览(33)
  • 【Unity3D】Unity与Android交互

            本文主要介绍 Unity 打包发布 Android apk 流程、基于 AndroidJavaObject(或 AndroidJavaClass)实现 Unity 调用 Java 代码、基于 UnityPlayer 实现 Java 调用 Unity 代码,官方介绍见→Android。         Unity 项目 C# 中获取平台的代码如下,需要引入 UnityEngine 命名空间。         Ru

    2024年02月07日
    浏览(33)
  • 【实现100个unity特效之7】unity 3d实现各种粒子效果

    直接调整为【Stretched Billboard拉伸/延伸渲染】 控制雨的大小 创建个材质 材质设置 挂载材质 设置延申效果 第一个叫做Speed Scale:通过比较每个粒子的速度,来去决定每个粒子拉伸/延伸的长度 而Length Scale:通过粒子的宽度,来决定粒子的长度 3d粒子大小随机化 颜色也可以设置随

    2024年01月19日
    浏览(42)
  • Unity3d发布android项目,打包apk包流程(unity2021.3.10)

    1、如下图,在安装版本设置里,点击添加模块。如果没有添加模块,证明你安装路径不是目前版本的安装路径,先去设置回来。 2、框选Android Build Support,点击继续,如下图, 3、同意,安装,如下图, 4、等待安装完成即可,如下图。 1、点击菜单栏File→Build Settings,进行编辑

    2023年04月23日
    浏览(40)
  • 【实现100个unity特效】shader实现3D物品闪光和描边效果

    线状映射图片 配置,按该shader新增材质 Outline Width控制描边 Line Speed控制闪光速度 当然,还可以修改对应的颜色 效果演示 赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的 点赞评论和关注 ,以便我第一时间收到反馈,你的每一次 支持 都是我不断创作的最

    2024年01月25日
    浏览(39)
  • Unity3D2020+导出Android工程中使用并交互

    , 目录 1,版本信息 2,前期准备 Unity方面: Android方面: 3,Android与Unity3D交互 unity2020+ android studio 2021 *不要用android studio 2020系列,存在不能导入Library的bug 1,先配置打包的一些必要要素,包括包名之类 2,修改打包选项,将其打包为Android工程  3,打包出来的工程如下,其中

    2023年04月08日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包