Как сделать прицел! - Форум Игроделов
Вт, 07 Май 2024, 10:19 
 
Приветствую Вас Гость Главная | Регистрация | Вход
Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум Игроделов » UNITY3D » ВИДЕОУРОКИ » Как сделать прицел!
Как сделать прицел!
CrazyNinjaCNДата: Ср, 14 Окт 2015, 14:31 | Сообщение # 1
Нет аватара
 
Сообщений: 7
Награды: 0
Репутация: 0
Статус: Offline

Как сделать прицел в Unity 3d. Приятного просмотра.
Script - https://yadi.sk/i/QjQImDm8jfsj7
 
Сообщение
Как сделать прицел в Unity 3d. Приятного просмотра.
Script - https://yadi.sk/i/QjQImDm8jfsj7

Автор - CrazyNinjaCN
Дата добавления - 14 Окт 2015 в 14:31
chapaeffДата: Вс, 18 Окт 2015, 13:52 | Сообщение # 2
 
Сообщений: 48
Награды: 0
Репутация: 12
Статус: Offline
Текстура не будет посередине. Она у тебя НАЧИНАЕТ рисоваться от середины, и идти вниз и вправо. + нету поддержки разных текстур. Если бы поставил не точку а текстуру перекрестия, то было бы заметно. Я бы написал так:

Код
using UnityEngine;

[ExecuteInEditMode] //предпросмотр в редакторе
public class SimpleCrosshair : MonoBehaviour {

    public Texture2D crosshairTexure; //текстура прицела сюда

    public int crosshairScale; // размер прицела (для фиксированного)
    

    
    void OnGUI () {
        //GUI.DrawTexture(new Rect(Screen.width / 2 - crosshairTexure.width/2, Screen.height / 2 - crosshairTexure.height/2, crosshairTexure.width, crosshairTexure.height), crosshairTexure); //прицел рисуется по размерам текстуры (просто так)
        GUI.DrawTexture(new Rect(Screen.width / 2 - crosshairScale / 2, Screen.height / 2 - crosshairScale / 2, crosshairScale, crosshairScale), crosshairTexure); //Фиксированный размер, который изменяется с помощью crosshairScale
    }
}


---------------------------------------------------------------------------------------
Throw Exception
(ノಠ益ಠ)ノ彡┻━┻
Catch Exception
┬──┬ ノ( ゜-゜ノ)


Сообщение отредактировал chapaeff - Вс, 18 Окт 2015, 14:01
 
СообщениеТекстура не будет посередине. Она у тебя НАЧИНАЕТ рисоваться от середины, и идти вниз и вправо. + нету поддержки разных текстур. Если бы поставил не точку а текстуру перекрестия, то было бы заметно. Я бы написал так:

Код
using UnityEngine;

[ExecuteInEditMode] //предпросмотр в редакторе
public class SimpleCrosshair : MonoBehaviour {

    public Texture2D crosshairTexure; //текстура прицела сюда

    public int crosshairScale; // размер прицела (для фиксированного)
    

    
    void OnGUI () {
        //GUI.DrawTexture(new Rect(Screen.width / 2 - crosshairTexure.width/2, Screen.height / 2 - crosshairTexure.height/2, crosshairTexure.width, crosshairTexure.height), crosshairTexure); //прицел рисуется по размерам текстуры (просто так)
        GUI.DrawTexture(new Rect(Screen.width / 2 - crosshairScale / 2, Screen.height / 2 - crosshairScale / 2, crosshairScale, crosshairScale), crosshairTexure); //Фиксированный размер, который изменяется с помощью crosshairScale
    }
}

Автор - chapaeff
Дата добавления - 18 Окт 2015 в 13:52
NapalmRainДата: Пн, 19 Окт 2015, 10:26 | Сообщение # 3
 
Сообщений: 473
Награды: 0
Репутация: 31
Статус: Offline
А почему бы не использовать систему объектного GUI?
Поставить якорь в центр и использовать сколь угодно много любых текстур...
 
СообщениеА почему бы не использовать систему объектного GUI?
Поставить якорь в центр и использовать сколь угодно много любых текстур...

Автор - NapalmRain
Дата добавления - 19 Окт 2015 в 10:26
Форум Игроделов » UNITY3D » ВИДЕОУРОКИ » Как сделать прицел!
  • Страница 1 из 1
  • 1
Поиск:
Загрузка...

Game Creating CommUnity © 2009 - 2024