Unity对象池初识

Unity对象池初了解


前言

例如:随着对游戏设计的深入了解,本文就介绍了unity的对象池的基础内容。


一、对象池是什么?

对象池简单来说就好比一个池子,有一池子空物体,预制体,一开始就实例化这些物体,当我们需要使用时,便从其他将其拿出(SetActive(true)),当用完时,便将其放回池子中(SetActive(false)),以便下次使用。就如打羽毛球,如果我们每次打一个球只打一次便扔掉,然后又打新球,这样就造成了极大浪费,而对象池就是将打过的球放回其中,减少开支消耗。

二、代码实现对象池

——这里以制作冲刺残影为例子进行讲解

1.首先创建一个空物体,以作为我们的第一个预制体来使用对象池

如下图:在这里插入图片描述
并且创建挂载上一个脚本来进行获取玩家的数据坐标图像等:在这里插入图片描述
并且写入代码:

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

public class ShadowsScript : MonoBehaviour
{
   
    private Transform player;

    private SpriteRenderer thisSprite;
    private SpriteRenderer playerSprite;

    private Color color;//进行透明度调节

    [Header("时间控制参数")]
    public float activeTime;//显示时间
    public float activeStart;//开始显示的时间点

    [Header("不透明度控制")]
    private float alpha;
    public float alphaSet;//初始值
    public float alphaMultiplier;//乘以系数逐渐减小

    private void OnEnable()
    {
   
        //记得切换unity角色的Player标签
        player = GameObject.FindGameObjectWithTag("Player").transform;
        thisSprite = GetComponent<SpriteRenderer>();
      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值