1. 程式人生 > >Unity中如何用程式碼實現橫版遊戲路徑的繪製

Unity中如何用程式碼實現橫版遊戲路徑的繪製

首先,在場景中新增一個Cube,新增為預製件。

建立一個指令碼,在指令碼中寫入下面的程式碼:

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


public class qianjing : MonoBehaviour
{

 public Transform prefab;//定義預製件
    public Vector3 onepos;//定義起始位置
    public Vector3 nextpos;//定義下一個位置
    public int num;//數量
    public Vector3 minsize;//最小範圍
    public Vector3 maxsize;//最大範圍
    Queue<Transform> queues;//佇列
    public float  distance;


    void Start()
    {
        queues = new Queue<Transform>(num);//例項化佇列
        for (int i = 1; i < num; i++)
        {
            Transform trans = GameObject.Instantiate(prefab);//例項化預製件
            queues.Enqueue(trans);//將預製件新增至佇列
        }
        nextpos = onepos;//起始位置  =  下一位置
        for (int i = 1; i < num; i++)
        {
            Keep();
        }
    }






    void Update()
    {
        if (Run.distances - queues.Peek().position.x >= distance)//物體移動距離與預製件長度的差
        {
            Keep();
        }


    }
    /// <summary>
    /// 預製件排列
    /// </summary>
    private void Keep()
    {
        //(預製件)隨機大小
        Vector3 ban = new Vector3(Random.Range(minsize.x, maxsize.x), Random.Range(minsize.y, maxsize.y), Random.Range(minsize.z, maxsize.z));
        Transform trans = queues.Dequeue();//暫時移除(預製件)


       
       
        
            Vector3 poss = nextpos;//獲取下一個預製件


            poss.y += ban.y * 0.5f;//預製件在Y軸方向上移預製件的一半距離
            poss.x += ban.x * 0.5f;//預製件在X軸方向右移預製件的一半距離
            trans.localScale = ban;//重新生成隨機預製件
            trans.position = poss;//獲取下一個預製件位置
            nextpos.x += ban.x;// 預製件在X軸方向右移(前)預製件大小的距離
        
       
        queues.Enqueue(trans);//新增佇列中
    }

}返回場景,建立一個空遊戲體,將指令碼掛載在空遊戲體上

點選執行,在遊戲視窗就可以看到隨機產生的遊戲路徑。

相關推薦

Unity中如何用程式碼實現遊戲路徑繪製

首先,在場景中新增一個Cube,新增為預製件。 建立一個指令碼,在指令碼中寫入下面的程式碼: using UnityEngine; using System.Collections; using System.Collections.Generic; public clas

UGUI_用動畫實現或豎遊戲背景幕布的移動

一.Demo演示   二.實現思路 通過用動畫來控制RawImage的UV Rect來控制幕布的移動 三.Demo原始碼 連結:http://pan.baidu.com/s/1sl0Vv9

Unity中用指令碼實現圖片替換

首先替換資源是要在當前專案中找到需要替換的資源 利用www類實現資源載入 程式碼如下 using UnityEngine; using System.Collections; using UnityEngine.Networking; using Syste

java程式碼實現猜數字遊戲

public class GuessingGame { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int num = (int)(Math.random()*100

Unity程式碼實現建立資源

用程式碼加圖片資源,建立材質 //圖片物件 Texture2D texture = null; void Start() { //建立材質,並設定預設著色器 Material mat = new Material (Shader.Find("Tran

C程式碼實現掃雷小遊戲

分析 同三子棋小遊戲一樣,掃雷小遊戲也分為如下思路: 標頭檔案 #ifndef __GAME_H__ #define __GAME_H__ #include <stdlib.h> #include <time.h> #include <s

unity中用shader實現大海的特效

之前學過一個是做流水效果的 但是自我感覺效果不太好,波動太規律了,而且能看到上面的面像是由多個面組合成的,感覺有點假,不過功能是實現了。 using UnityEngine; using System.Collections; public class CreateWater : M

Python程式碼實現猜拳小遊戲

import random #1代表true while 1: #生成隨機數 s = int(random.randint(1, 3)) #賦值給生成的隨機數 if

感知機程式碼實現(python

一、實現例子李航《統計學方法》p29 例2.1正例:x1=(3,3), x2=(4,3),負例:x3=(1,1)二、最終效果三、程式碼實現import numpy as np import matplotlib.pyplot as plt p_x = np.array([[3

【轉載】88行程式碼實現俄羅斯方塊遊戲(含講解)

#include <windows.h> #include <stdio.h> #include <time.h> #include <conio.h> #include <stdlib.h> char gcTex

unity中用UDP實現傳送訊息機制

首先,用Unity新建兩個專案,然後一個寫Server,另一個寫Client。`using UnityEngine; using System.Collections; //引入庫 using System.Net; using System.Net.S

自己實現IOC容器,java程式碼實現簡易IOC容器,IOC容器實現的步驟分解

一、需求   實現一個簡易的IOC容器,管理Bean,從IOC容器的BeanFactory中獲取例項,從而取代自己new例項的做法。 二、實現步驟分析 三、具體程式碼實現   自定義註解類 MyComponent 和 MyAutowired: 1 package MyIOCAnd

打磚塊(1)移動 程式碼實現

public float speed = 10.0f;//橫版移動速度 void Update() { if(Input.GetKey(KeyCode.LeftArrow) { if(transform.position.x > -5.2) //上下文的5.2是板子

Unity 4 3 製作一個2D射擊遊戲

using UnityEngine;/// <summary>/// Launch projectile/// </summary>public class WeaponScript : MonoBehaviour{  //-------------------------------

Unity 2D通關 小遊戲-當悟空遇上熊本(Unity 5.6)C#

2D橫版通關小遊戲,美術資源原創自合作美工,這是我學unity遊戲開發做的第一個小demo,學到了很多東西。從什麼都不會到自己上手學習Unity軟體的基本操作  _(:з」∠)_  ,給主角加剛體,碰撞器,標籤,實現主角移動,跳躍,幀合成動畫,發射子彈,特效磚塊,頂一

Unity學習筆記1 簡易2DRPG遊戲製作(一)

這個教程是參考一個YouTube上面的教程做的,原作者的教程做得比較簡單,我先參考著做一遍,畢竟我也只是個初學者,還沒辦法完全自制哈哈。不過我之前也看過一個2D平臺遊戲的系列教程了,以後會整合起來,做出一個類似冒險島那樣的遊戲。 原視訊連結:點選開啟連結   這是個YouT

JS實現簡易貪吃蛇小遊戲(純js程式碼

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head&

Unity學習筆記2 簡易2DRPG遊戲製作(二)

十二、敵人受攻擊時的閃爍和Player的生命值的修正 上一篇中,我們利用Controller2D中的IEnumerator TakenDamage介面,使得我們的Player受到攻擊時會進行閃爍,我們同樣地也希望在我們的敵人身上可以實現相同的效果。所以我們現在需要複製Con

Unity 4.3 製作一個2D射擊遊戲

using UnityEngine;/// <summary> /// Launch projectile /// </summary>public class WeaponScript : MonoBehaviour {   //---------------------------

簡易2DRPG遊戲制作

學習 class log clas unit sdn 筆記 制作 details Unity學習筆記1 簡易2D橫版RPG遊戲制作 http://m.blog.csdn.net/article/details?id=24601905簡易2D橫版RPG遊戲制作