美文网首页
一、11、unity导出aar给Android使用

一、11、unity导出aar给Android使用

作者: GameObjectLgy | 来源:发表于2023-02-13 10:48 被阅读0次
一、应用场景

有的时候以安卓为主的App项目想使用unity引擎的功能,因为unity能渲染场景,3D模型渲染与交互,实时调用粒子效果等。这是通常就会将unity集成到安卓工程当中使用。集成方式,可以让unity导出安卓工程,然后编译出aar,再把aar给真正的安卓工作作为library来使用。

二、过程方法

1、简单建个unity工程


1676119944922.png

点击输出窗口的时候改变cube的颜色

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Cube : MonoBehaviour
{

    bool changeColor = true;
    public Material CubeMaterial;
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetMouseButton(0))
        {
            changeColor = !changeColor;
            if (changeColor)
            {
                CubeMaterial.color = Color.red;
            }
            else
            {
                CubeMaterial.color = Color.green;
            }
        }
    }
}

2、切换到安卓平台


1676120010246.png

3、playersetting里选一下一些配置,这里使用的最低API版本最好是真正使用的安卓工程那边的版本保持一致。

1676120129139.png

4、导出工程后,用Android Studio直接打开导出的工程。在右边侧边栏,双击运行assemble


1676120293046.png

5、将aar导出到真正需要使用unity功能的工程
(1)strings文件增加一句
<string name="game_view_content_description"></string>

1676120513036.png

(2)App下的build.gradle增加依赖


1676120652549.png

6、调用代码

package com.lgy.useaar;

import android.os.Bundle;

import com.lgy.mylibrary.Test;
import com.unity3d.player.UnityPlayerActivity;

public class MainActivity extends UnityPlayerActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //new Test();
    }
}
1676120772478.png

7、调用结果
启动后会启动unity场景,点击屏幕,Cube切换颜色。

相关文章

网友评论

      本文标题:一、11、unity导出aar给Android使用

      本文链接:https://www.haomeiwen.com/subject/akakkdtx.html