11/29/2019

Шпаргалка C#

Структура файла скрипта:
После двойного щелчка на скрипте в Unity, он будет открыт в VisualStudio
Содержимое файла будет выглядеть примерно так:


using UnityEngine;
using System.Collections;

public class MainPlayer : VisualStudio {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}


Две основные функции, определенные внутри класса. Функция Start и Update
Update (Функция ) - это тело скрипта, срабатывания действий и ответная реакция на ввод пользователя.
В Update нужно инициализировать переменные заранее.
Start будет вызвана до вызова функции Update, это место для выполнения инициализации переменных.

Cкрипт определяет класс, являясь производным от VisualStudio и получит имя от файла скриптового ассета.

#pragma strict
function Start () {
}
function Update () {
}

Скрипт нужно прикреплять к объекту путем перетаскивания ассета на объект в панели Hierarchy 

При создании сценария создаете свой собственный тип компонента, который можно прикрепить к объектам

В C # вы должны объявить переменную как public, чтобы увидеть ее в Инспекторе. В UnityScript переменные являются открытыми по умолчанию, если только вы не укажете, что они должны быть закрытыми

Пример открытых переменных

public class MainPlayer : {
// Use this for initialization
void Start () {
}

Пример закрытых переменных

#pragma strict
private var invisibleVar: int;
function Start () {
}

Скрипту часто необходимо обратиться к другим компонентам, присоединенных к GObject.
Компонент является экземпляром класса, первым будет получение ссылки на экземпляр.
Это делается с помощью функции GetComponent.
Объект компонента сохраняют в переменную таким синтаксисом:
void Start () {
    Rigidbody rb = GetComponent<Rigidbody>();
}
В UnityScript синтаксис немного отличается:
function Start () {
    var rb = GetComponent.<Rigidbody>();
}
Твердое тело;

 void  Awake () {
  body = GetComponent < Rigidbody > ();
 }
Удалите код смещения Updateи вместо этого назначьте нашу скорость телу.
  // Vector3 смещение = скорость * Time.deltaTime;
  // Vector3 newPosition = transform.localPosition + displacement;
  //transform.localPosition = newPosition;
  body.velocity = скорость;
Но физические столкновения и тому подобное также влияют на скорость,

Комментариев нет:

Отправить комментарий