Войти
ПрограммированиеФорумИгровая логика и ИИ

Разработка игр на Unity (2 стр)

Страницы: 1 2 3 4 Следующая »
#15
14:02, 26 дек. 2018

cyberdev
> Плохо помню перемножение матриц..
Плохо когда не знал, а если еще и забыл, то вообще беда.


#16
14:52, 26 дек. 2018

я тоже в начале спрашивал как в юнити матрицы умножить(
ппц не привычная была эта компонентная стреда. потом правда открыл для себя, что гуголь про юнити знает больше чем про другие двежки.

#17
16:48, 26 дек. 2018

Не так давно тоже искал, как перемножать матрицы в Unity.Mathematics.

cyberdev
> Ну например, если мне кто-то объяснил бы что сбрасывает transform.localRotation
> после того как она поменялась, то возможно камера и работала бы...
> А может само выражение неправильно:
> transform.localRotation = originalRot * xQuat * yQuat;

Выражение само по себе вполне нормальное: текущий поворот высчитывается как начальный поворот originalRot (которому значение присваивается один раз при первом запуске скрипта) плюс плюс пара небольших вращений, зависящих от скорости движения мыши.

Но если требуется другая логика, то надо написать как требуется.

#18
(Правка: 17:22) 17:18, 26 дек. 2018

> Плохо когда не знал, а если еще и забыл, то вообще беда
И не говори... :)

> Но если требуется другая логика, то надо написать как требуется
Нужно чтобы текущие углы камеры не сбрасывались. Потом, как нибудь поэкспериментирую на досуге...

#19
(Правка: 21:32) 21:23, 26 дек. 2018

Всё. Сделал. Просто надо было во всём  как следует разобраться.

#20
0:40, 27 дек. 2018

"Мне нужен движок на котором можно легко сделать игру"
Где то я видел движок где можно просто настроить насколько крутецкая должна быть игра и подтвердить выбор. И он компилирует что то наподобии Сталкера или Вар Крафта, только лучше.
Сейчас все топовые студии его используют.

#21
(Правка: 1:12) 1:09, 27 дек. 2018

> Где то я видел движок где можно просто настроить насколько крутецкая должна быть игра и подтвердить выбор
Ага. Там еще есть пресеты:

1. Old school
2. Наши дни
3. Круто
4. Круче только вареные яйца
5. Круче не бывает

На самом деле я имел в виду движок, который выполняет всю стандартную работу по доводке графики и физики игры до состояния смотрибельности и играбельности. То что как раз и делают современные движки, чтобы не заставлять программистов придумывать велосипед снова и снова. Так как с помощью одного только программирования и даже фреймворков игры уже давно никто не делает. А если и делают, то только считанные единицы. И я не понимаю, зачем. Если можно взять готовый движок или написать свой  и делать на нем игры.

#22
1:30, 27 дек. 2018

cyberdev
> И я не понимаю, зачем. Если можно взять готовый движок или написать свой
много движков написал?

#23
(Правка: 11:24) 1:51, 27 дек. 2018

> много движков написал?
А кто много их пишет? Даже такая столь известная и супермегакрутая компания как Rockstar Games сделала только один движок :)
Не самый плохой, но и не самый лучшый. Потому, как такие игры как GTA 5 и RDR далеко не всякое железо потащит.

А к примеру такая игра как Call of Duty 4 шла у меня даже на моем старом офисном ПК на одноядерном Целероне с частотой 1.8 GHz и 1 GB ОЗУ . Правда там стояла видеокарта GeForce 8500, что позволяло наслаждаться столь кинематографичной графикой кат сцен игры и самой игрой. Довольно скромные системные требования, особенно по современным меркам. Но вот что значит хорошо сделанная игра! В то время как современную гонку разработчиков игр я не понимаю. Уже придумали огромное количество разнообразных шейдеров и т. д. Так что реалистичную графику можно уже давно сделать и нет особого смысла выдумывать что-то еще. Чтобы геймеры тратили как можно больше денег по всему миру на топовое железо, которое к тому же может и не удовлетворять требованиям некоторых современных игр (криво оптимизированных или на кривых движках) :)

Не знаю, зачем я столько всего написал... Наверно, просто к слову пришлось... Может кому нибудь будет интересно почитать или дополнить

#24
15:02, 27 дек. 2018

cyberdev
Если у тебя нет фактической прибыли от игры на Юнити, то ставь 3 вариант, иначе другие

#25
(Правка: 16:05) 16:04, 27 дек. 2018

> Вот, к примеру, добавить в эту игру полигонов, улучшить текстуры
> и сделать больше матерьялов, систем частиц, увеличить площадь локаций, количество анимаций
> и получится вполне себе современная игра, которая даст фору многим ныне выходящим.

В игре еще очень немаловажен сюжет. Конечно, чтобы испортить такую игру как Call of Duty 4 это надо еще постараться, но современные разрабы смогли бы... :) Когда она не пойдет скажем на i5 с 4 ядрами и частотой 2.6 GHz, ОЗУ с 4 Гигами и видеокартой GeForce 940 М с 2 GB ОЗУ :) Раньше о таком железе можно было только мечтать, а сейчас уже это тащит далеко не все современные игры.

Современные свистелки и перделки это одно. Но вот прошел я GTA 5 и подумал: ну да... ну круто... ну и что дальше... :) Мне почему-то сразу захотелось пройти GTA San Andreas. Вот там действительно сюжет и особая атмосфера игры. Сделали бы разработчики эту часть на современном движке, цены бы им не было. А то сделали кучу всего, нет не мисии скорой, не миссии пожарника, не гонок нормальных. Оружие все в магазине, выбирай любое :) Так не интересно. Не прокачки нет, ничего. Реально, проходишь игру и думаешь, что еще можно  сделать или что еще пройти и ничего на ум не приходит. А в сюжете только ездишь на машинах и иногда стреляешь. То ли дело старая  GTA San Andreas и другие подобные игры начала нулевых. Продолжать список можно еще очень долго.

#26
17:03, 27 дек. 2018

Если вам нужен графон, то это пока что точно не Юнити. Я детально изучил отчего там все вечно мажется и могу сказать что результаты не утешительны. В Юньке очень криво работает сжатие текстур. Тут два ключевых слова - очень, криво. Паинт из текстуры в 1024 делает 512 намного, намного лучше. Так что там надо делать лоды не только с упрощенной геометрией, но и со своими текстурами. Причём смена лодов начинается уже в 10м. А это сами понимаете, новые материалы, которая Юнька кушает неохотно, затраты памяти, трудоемкость и т.д.
В общем графон сделать можно, но это совсем не просто.

#27
17:45, 27 дек. 2018

Фильтр текстуры можно выбрирать индивидуально для каждой, или выбрать значение по умолчанию для всех.
Вообще фильтрация на качество картинки в целом оказывает слабое влияние, особенно в движении.

#28
(Правка: 18:44) 18:14, 27 дек. 2018

AntonioModer
> Если у тебя нет фактической прибыли от игры на Юнити, то ставь 3 вариант, иначе другие
Уже выбрал третий вариант. Пока интересно поизучать движок.

Run
>Когда печатал про "добавить в эту игру" подразумевал,
>что можно сделать очень гибкие настройки самой игры,
>когда на слабом железе можно занизить требования,
>а на современном задрать вверх
Да. Это обязательно должен делать каждый разработчик или компания. Чтобы их игра шла на любом ведре, а на топовом железе выдавала все свои навороты, свистелки и перделки :) Но, очевидно, никому это не выгодно. Тогда ж ведь топовое железо никто покупать не будет :) Все будут сидеть на олдскульных Пеньтиумах и Целеронах, с 1 - 2 GB оперативы.

sledo
> Если вам нужен графон, то это пока что точно не Юнити.
Но все же больше возможностей чем простое программирование или фреймворки. А если движок изучить досконально, то можно попробовать и свой написать, с каким угодно рендерингом.

Мне одна вещь непонятна, как новичку в Юнити. Управление углами камеры с помощью мыши я написал. А теперь нужно, чтобы игрок (тело) вращался вокруг оси Y вместе с камерой. То есть, сообщить ему локальный угол поворота камеры. Написал скрипт, который вращает игрока вместе с камерой.

//Объект к которому привязан данный скрипт поворачивается следом за камерой
//В случае с шутером обычно это главный игрок

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

public class CourseBehCamera : MonoBehaviour
{
    public string cameraName = "Camera";
    private GameObject _camera = null;
    // Start is called before the first frame update
    void Start()
    {
        // Справка: https://docs.unity3d.com/ru/current/Manual/ControllingGameObjectsComponents.html
        _camera = GameObject.Find(cameraName);
    }

    // Update is called once per frame
    void Update()
    {
        if (_camera == null)
            return;
        transform.rotation = Quaternion.Euler(transform.rotation.x, _camera.transform.localRotation.y, transform.rotation.z);
    }
}

Но когда нажимаю вперед то игрок все равно не идет по новому курсу, а идет по изначальному. К игроку, помимо єтого еще привязан скрипт KeyControl.cs.

#29
21:02, 27 дек. 2018

Не понимаю, зачем изобретать велосипед? Есть стандартные фёрст персон контроллеры. Берите их и изучайте. Зачем создавать себе проблемы и героически их решать с помощью нас?

Страницы: 1 2 3 4 Следующая »
ПрограммированиеФорумИгровая логика и ИИ