GAMESH

游戏美术动画unity资源搬运工!

剧情党,完美控!
桐崎千棘
当前位置:首页 > 学习 > 正文内容

unity游戏引擎开发的ARPG游戏DEMO

admin1年前 (2020-06-05)学习1661

耗时一个月左右终于完成了这个ARPG游戏的demo,基本框架已经达到了我的要求,只是还有些小bug需要后面慢慢修复!

demo功能包括:

移动(走动-小跑-疾跑)

普通攻击

无限连击

空中攻击

空中对地攻击

8个技能(采用RT+ABXY和 LT+ABXY进行组合)

坐骑

游泳

宠物

敌人AI(多技能攻击,自动追踪)

镜头缩放

视角控制

商店

切换武器

装备/道具

任务系统

技能系统

角色状态栏

背包

npc对话

npc任务

本人是一个游戏动画师,对于程序方面有些吃力,靠着日积月累的一点c#知识勉强改出了自己想要的功能,游戏动画量多很多地方没有细做,需要以后慢慢细化!

这个demo素材均来自网络,所以只供学习研究使用!如果我打算把它继续做下去估计会购买正版素材,毕竟现在人们为了避免不必要的麻烦,对版权越来越重视了!游戏的基本框架是Action-RPG Starter Kit6.5,场景美术是Handpainted Forest Environment,我是在这些基础上改进过来的!

unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第1张

为了达到一个比较好的arpg效果我增加了一些新的功能,比如突进,翻滚,跳跃攻击,技能跟随,锁定敌人,手柄震动。。。。。。。为了达到效果满意所以动画方面绝对不能少,下面是animator

unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第2张

从图片可以看出动画数量是不少的!

  个人比较偏爱手柄玩游戏,所以游戏按键大部分都是适配了xbox游戏手柄!增加了震动反馈,当受到打击时释放技能时手柄均会震动!使游戏玩起来更有手感!为了游戏npc更智能我使用了NPCPopulator插件制作群体npc动画,npc会随机走动在指定范围内!unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第3张


为了增加打击感,使用了动画速度控制,当击中敌人时攻击动画会把速度变成0.1,持续0.3秒且镜头会震动。

IEnumerator animspeed1()
    {
      

        animator.speed = 0.1f;
        yield return new WaitForSeconds(0.3f);
        animator.speed = 1f;


       

    }

自动锁定面前敌人,让攻击失误减小

public void OnGetEnemy(Transform player, int radius, int angle)
    {

        List<GameObject> mList = new List<GameObject>();
        //球形射线检测,得到主角半径2米范围内所有的物件
        Collider[] cols = Physics.OverlapSphere(player.position, radius);
        //判断检测到的物件中有没有Enemy
        if (cols.Length > 0)
        {
            for (int i = 0; i < cols.Length; i++)
                //判断是否是怪物
                if (cols[i].tag.Equals("Enemy"))
                { //判断敌人是否在主角前方60度范围内


                    Vector3 dir = cols[i].transform.position - player.position;
                    if (Vector3.Angle(dir, player.forward) < angle)
                    {
                        mList.Add(cols[i].gameObject);



                    }
                }


            float distance_min = 10000;    //主角与怪物的最近距离
            float distance = 0;            //当前怪物与主角的距离
            int id = 0;                    //与主角最近的怪物的编号
                                           //遍历所有敌人,计算距离并比较
            for (int i = 0; i < mList.Count; i++)
            {

                distance = Vector3.Distance(transform.position, mList[i].transform.position);
                if (distance < distance_min)
                {
                    //找到一个更近的
                    distance_min = distance;
                    id = i;

                }
            }


            if (mList.Count > 0)
            {


                Vector3 targetPos = mList[id].transform.position;
                //攻击点面向怪物


                targetPos.y = this.transform.position.y;
                this.transform.LookAt(targetPos);//使主角望向距离最近的敌人并开始攻击
                targetPos.y = targetPos.y + 1;
                attackPoint.LookAt(targetPos);

            }


            // cols[i].GetComponent<BaseHero>().OnTakeDamage();



        }
        return;
    }

游戏受到攻击手柄震动,这里引用了XInputDotNet这个插件

 IEnumerator SetVibration(float right, float left, float tim)
    {
        if (this.tag == "Player") { 
        Debug.Log("震动");
        // XInputDotNetPure.dll
        XInputDotNetPure.GamePad.SetVibration(_type, right, left);
        yield return new WaitForSeconds(tim);
        XInputDotNetPure.GamePad.SetVibration(_type, 0, 0); }
    }

游戏场景截图

unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第4张unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第5张

unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第6张

unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第7张

unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第8张

unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第9张


unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第10张

unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第11张

unity游戏引擎开发的ARPG游戏DEMO 3dmax 游戏动画 unity 游戏引擎 独立游戏 第12张

游戏视频


如果你对ARPG开发感兴趣可以试着联系我共同研究!游戏试玩过两天单独放出来!

安卓版试玩下载

扫描二维码推送至手机访问。

本サイト上に掲載の文章、画像、写真などを無断で複製することは法律で禁じられています。全ての著作権はGAMESHに帰属します。

本文链接:https://pylblog.com/post/183.html

分享给朋友:

相关文章

猫耳小美女3d模型下载

猫耳小美女3d模型下载

高精度可爱的漂亮女孩模型,格式为fbx通用3d格式。文件大小:185m文件格式:fbx绑定:有贴图:有贴图大小4096*40960.5元购买文件...

模型收集

模型收集

cgjoy大神免费放出的模型,收集起来说不定哪天用得上呢!链接:https://pan.baidu.com/s/1ykhTcJswn94HfJYndFRVXA 提取码:vp99 ...

39miku-max模型

39miku-max模型

39式初音一枚,3dmax版本!初音的全称是“初音未来”,其中“未”在日语中音读为“み(mi,音同“咪”),“来”的简体形汉字读作“く(ku,音同“库”)”,所以初音又叫“初音miku”。 至于3和...

3dmax绘图工具

3dmax绘图工具

用于在3dsmax视口中绘制的简单工具。用于在场景中制作图形注释和标记。下载文件function dodo(){ layer.msg('即将弹出二维码页面! ', { time: 1000...

动画工具集合

动画工具集合

整合动画师常用动画插件,提高工作效率!拖到3dmax可以在customize菜单栏找到动画工具把他拖到菜单栏可以生成一个按钮除了常用的功能外还增加一键调节时间轴,可以快速把动画时间轴调成0帧到你key...

3dmax各种问题解决方案

3dmax各种问题解决方案

做动画已经几年了,一年中大部分的时间都在跟3dmax打交道!每天总会遇到许多奇葩的问题,然后这里我就根据自己经验总结一些决绝解决办法,希望对大家有帮助!   1.0  &...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。