Воскресенье, 16 Июня 2024, 13:19

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
8Observer8Дата: Четверг, 27 Августа 2015, 21:26 | Сообщение # 501 | Тема: WebGL VK. Не работает обработка клавиш для приложения vk.com
заслуженный участник
Сейчас нет на сайте
Цитата Vinchensoo ()
Пссс, если вы хотите веб, почему не взяли нормальный хтмл5 движок?

Не на столько сильно я хочу веб. Посмотрю будет ли развиваться WebGL в Unity. Буду тестить от версии к верии. Если не будет развиваться и если Web Player выпилят из всех браузеров, то я просто буду собирать на что собирается без особых проблем.
8Observer8Дата: Четверг, 27 Августа 2015, 14:09 | Сообщение # 502 | Тема: WebGL VK. Не работает обработка клавиш для приложения vk.com
заслуженный участник
Сейчас нет на сайте
Цитата Vinchensoo ()
Да веб-плеер пока еще вполне норм.

Он медленнее запускается. А в сентябре на Chrome не будет запускаться. Мне этот браузер больше нравится. Для моих простых игр пока хватит WebGL Preview. Может к тому времени, как я буду сильнее и выйдет полноценный WebGL, без Preview.

Мне один из разработчиков ответил здесь, что это исправят в 5.2 и можно попробовать Application.ExternalCall("window.focus();");

Цитата
I can't test it because I don't have a VK account, but, probably this is a known issue, where the WebGL content will not focus the iframe when clicked on it correctly. This will be fixed in an upcoming release (I believe 5.2), but it is also possible to work around it by calling: Application.ExternalCall("window.focus();"); to force the iframe to be focused.


Добавлено (26 августа 2015, 15:55)
---------------------------------------------
Попробовал я добавить команду: Application.ExternalCall("window.focus();");

Клавиши не заработати. Вывод: буду использовать WebPlayer пока не выйдет 5.2.

Добавлено (26 августа 2015, 19:53)
---------------------------------------------
Цитата Vinchensoo ()
Да веб-плеер пока еще вполне норм.

Пусть в Хром не работает, зато в FireFox и Opera - нормально.

Я сравнил по Марио. В плеере работает без задержек, а WebGL неприятно лагает.

Добавлено (27 августа 2015, 14:09)
---------------------------------------------
Ответили, что вместо ExternalCall нужно использовать ExternalEval, но у меня приложение падает с ошибкой:
Цитата
"An error occured running the Unity content on this page. See your browser's JavaScript console for more info. The error was:Uncaught SyntaxError: Unexpected token )"


Но ведь в документации написано, что for Web Player only. Значет для WeGL не годится.

Я собрал WebGL с опцией "Fastest (very slow builds)" и собрал в WebPlayer. Посмотрите какая разница (это прямые ссылки, не VK):


Сообщение отредактировал 8Observer8 - Четверг, 27 Августа 2015, 14:17
8Observer8Дата: Вторник, 25 Августа 2015, 14:37 | Сообщение # 503 | Тема: WebGL VK. Не работает обработка клавиш для приложения vk.com
заслуженный участник
Сейчас нет на сайте
Может быть, действительно, баг. Я заметил, работает через раз. Если во время запуска кликать и нажимать W, то частенько начинает работать.

Добавлено (25 августа 2015, 14:37)
---------------------------------------------
Я решил проблему. Просто во время загрузки приложения нужно кликать мышкой по сцене и нажимать W, тогда 100% начинает обрабатывтаь клавиши. Нужно только придумать, где руководство пользователя написать. Может исправят баг.


Сообщение отредактировал 8Observer8 - Вторник, 25 Августа 2015, 14:39
8Observer8Дата: Понедельник, 24 Августа 2015, 15:19 | Сообщение # 504 | Тема: WebGL VK. Не работает обработка клавиш для приложения vk.com
заслуженный участник
Сейчас нет на сайте
Здравствуйте,

На примере, простой змейки. Если запустить напрямую, то работает --> ссылка

А вот если создать приложением iFrame для vk.com, то клавиши не обрабатываются: https://vk.com/app5043935

Весь код:

Snake.cs


SpawnFood.cs
8Observer8Дата: Среда, 19 Августа 2015, 20:53 | Сообщение # 505 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Цитата basist ()
На ассет стор есть отличный "Standard Assets" там есть пример 2д платформера

Скрипт я оттуда и взял. Называется CameraFollow.

Цитата basist ()
Это что-то в скриптах перемудрил.

Я посмотрю внимательнее.

Я написал скрипт на Python для GIMP:

add-pixels-to-tiles.py


который вот это изображение:


преобразует в это:


Скрипт работает 8 минут 25 секунд. Попробую сначала переписать его для Photoshop на JavaScript.
Если будет так же долго, то буду писать плагин для Unity.
Если и это не поможет, то буду делать алгоритм оптимальнее.

Добавлено (19 августа 2015, 19:25)
---------------------------------------------
Я решил пока не терять время с плагинами. Работает, пусть и медленно. Но мне же один раз нужно обработать TileSet.

По поводу Occlusion Culling. Здесь я узнал, что объекты должны скрываться даже на Scene. Для построения сетки нужно чтобы все объекты были на сцене.

Я создал пустой объект CreateWorld_1_1. Повесил на него скрипт с тем же именем, в котором в Start'е создавал уровень. Но теперь я Start переименовал в CreateWorld. Создал скрипт World_1_1_Inspector, который унаследовал от Editor. Теперь я могу построить уровень до запуска игры:

Код
using UnityEngine;
using System.Collections;
using UnityEditor;

[CustomEditor(typeof(CreateWorld_1_1))]
public class World_1_1_Inspector : Editor
{
        private CreateWorld_1_1 world;

        void OnEnable()
        {
            world = (CreateWorld_1_1)target;
            world.CreateWorld();
        }

        public override void OnInspectorGUI()
        {
            if (GUILayout.Button("Hello"))
            {

            }
        }
}



Попробую теперь реализовать Occlusion Culling.

Добавлено (19 августа 2015, 20:14)
---------------------------------------------
Оказывается, для работы Occlusion Culling нужен "Mesh Renderer", а не "Sprite Renderer".

Добавлено (19 августа 2015, 20:53)
---------------------------------------------
У меня вот здесь ошибка:
Код
    void OnEnable()
       {
           world = (CreateWorld_1_1)target;
           world.CreateWorld();
       }


Нужно по кнопке мир создавать. А то в OnEnable у меня столько копий насоздавалось.

Опция Occlusion Culling работает только для 3D. Есть выход - использовать этот самодельный, который предложил basist.


Сообщение отредактировал 8Observer8 - Среда, 19 Августа 2015, 20:55
8Observer8Дата: Среда, 19 Августа 2015, 14:04 | Сообщение # 506 | Тема: UI script для начинающих
заслуженный участник
Сейчас нет на сайте
Цитата sixdemon ()
-пытался...кнопка в предпросмотре появилась но картинки так и были вне...хотя по коду были внутри...странно


Должно выглядеть так:



Сообщение отредактировал 8Observer8 - Среда, 19 Августа 2015, 14:05
8Observer8Дата: Среда, 19 Августа 2015, 11:00 | Сообщение # 507 | Тема: UI script для начинающих
заслуженный участник
Сейчас нет на сайте
Цитата sixdemon ()
<Text> - это часть не очень понятно, что здесь надо вводить? ...

Компонент Text висит на объекте. Text - это имя компонента. Вы можете его поменять.

Цитата sixdemon ()
вот скриншоты из программы (прошу прощение за размеры не понял как их в спойлер убрать..или как то скрыть)

Кнопка spoiler.

Ошибку выдаёт, потому что нужно без "s" писать: GetComponentsInChildren -> GetComponentInChildren


Сообщение отредактировал 8Observer8 - Среда, 19 Августа 2015, 11:02
8Observer8Дата: Среда, 19 Августа 2015, 09:02 | Сообщение # 508 | Тема: Реализация столкновений в 2D танчиках
заслуженный участник
Сейчас нет на сайте
Цитата KamiRonin ()
тогда лучше - второй вариант организации взаимодействий - убрать всю физику!

Тут тоже есть проблемы в поиске простого решения. Позже, как руки дойдут, подробнее опишу проблему или покажу простой пример. В кратце, использую OnTriggerStay2D, но при упорстве можно проехать поверх танка врага.


Сообщение отредактировал 8Observer8 - Среда, 19 Августа 2015, 09:02
8Observer8Дата: Среда, 19 Августа 2015, 08:54 | Сообщение # 509 | Тема: Реализация столкновений в 2D танчиках
заслуженный участник
Сейчас нет на сайте
Цитата KamiRonin ()
будет. а как он должен действовать при столкновении?? как ни в чем ни бывало ехать дальше?

Если упереться в бок или (тем более) в зад врага, то, конечно, враг должен ехать дальше.


Сообщение отредактировал 8Observer8 - Среда, 19 Августа 2015, 08:57
8Observer8Дата: Среда, 19 Августа 2015, 08:39 | Сообщение # 510 | Тема: Реализация столкновений в 2D танчиках
заслуженный участник
Сейчас нет на сайте
Цитата KamiRonin ()
поставить очень большие величины у ригидбоди2д врага..

А танк врага не будет при этом останавливаться?


Сообщение отредактировал 8Observer8 - Среда, 19 Августа 2015, 08:40
8Observer8Дата: Среда, 19 Августа 2015, 08:21 | Сообщение # 511 | Тема: Реализация столкновений в 2D танчиках
заслуженный участник
Сейчас нет на сайте
За пример большое спасибо, но он не решает проблемы. Мне нужна физика (точнее её отсутствие), как в оригинальном Battle City, где нельзя двигать танки.
8Observer8Дата: Среда, 19 Августа 2015, 08:14 | Сообщение # 512 | Тема: UI script для начинающих
заслуженный участник
Сейчас нет на сайте
sixdemon, чтобы путаницы не было уточните какие кнопки вы используете: те что из меню создаются или те что программно, как выше показали.
8Observer8Дата: Вторник, 18 Августа 2015, 22:17 | Сообщение # 513 | Тема: UI script для начинающих
заслуженный участник
Сейчас нет на сайте
Цитата sixdemon ()
не могу из скрипта , привязанного к Button - поменять собственно текст на самой кнопке или значение текста в Text на панели....

А умеете ли вывести в консоль "Hello World!" при нажатии на кнопку?

Вот так:
Код

// ...

     void HelloButtonClicked()
     {
         Debug.Log("Hello World!");
     }

// ...
8Observer8Дата: Вторник, 18 Августа 2015, 22:02 | Сообщение # 514 | Тема: Движок для реалтайм сцен с хорошим освещением
заслуженный участник
Сейчас нет на сайте
Unity5 будет оптимальным вариантом. В поиске: unity global illumination tutorial

Сообщение отредактировал 8Observer8 - Вторник, 18 Августа 2015, 22:08
8Observer8Дата: Вторник, 18 Августа 2015, 18:17 | Сообщение # 515 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Большое спасибо, что напомнил о Ocllusion Culling. Обрати внимание, что на видео, хотя и дата 2015 года, но используется старый подход, когда эта опция входила в Pro версию. Я прочитал в документации, что для включения опции нужно поставить для объектов "Occludee Static", потому что у меня объекты не перекрывают другие. Всё равно так же подтормаживает перемещение камеры, но что интересно FPS не просидает ниже 70. А ещё я попробовал убрать галочки "Occludee Static" и FPS остался на том же уровне.

Сообщение отредактировал 8Observer8 - Вторник, 18 Августа 2015, 18:19
8Observer8Дата: Вторник, 18 Августа 2015, 13:37 | Сообщение # 516 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
А я смогу потом нарезать полученную текстуру с помощью "Sprite Editor"? Будет ли это сложнее, чем написать плагин для GIMP?

Пока что я понял, как работать с GIMP'ом через Python. Это довольно просто. Есть консоль, которую можно отрыть так: в меню выбрать "Filters" -> "Python-Fu" -> "Console"

В консоле есть кнопка "Browse...". При нажатии отрывается справка, где можно искать API функции, читать описания. Например, можно навести на кнопку с пипеткой и увидеть её название: "Color Picker". Ввести это название в поиске окна "Browse...". Найдётся функция: gimp-color-picker. Можно прочитать её описание и какие аргументы она принимает. Если выделить функцию и нажать кнопку "Apply", но в консоль скопируется следующее:
Цитата
color = pdb.gimp_color_picker(image, drawable, x, y, sample_merged, sample_average, average_radius)


У меня такая идея. Сначала применить этот скрипт, чтобы сделать расстояние между тайлами в 5 пикселей. А потом в своём скрипте брать пипеткой цвет на краю тайла и рисовать с помощью функции gimp.pencil рядом ещё два таких пиксела. И так для каждого крайнего пиксела.


Сообщение отредактировал 8Observer8 - Вторник, 18 Августа 2015, 13:39
8Observer8Дата: Понедельник, 17 Августа 2015, 15:49 | Сообщение # 517 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Делать в захлёст! А это идея! Посмотрю по ранее озвученным инструментам, так как это дело нужно максимально автоматизировать.

Добавлено (14 августа 2015, 18:04)
---------------------------------------------
Мне одному кажется, что игра немного подтормаживает или нормально? SuperMario_1.3.0 (win).7z

Добавлено (17 августа 2015, 15:49)
---------------------------------------------
Я проверил притормаживает ли Марио на более мощной машине. Оказывается, нет. Это всё из-за того, что я генерирую все префабы с тайлами сразу. Я вижу один простой выход. Раз уровень хранится в двумерном массиве, то я могу разбить его на минимальные куски. Подгружать постепенно новые куски карты и уничтожать те, что пройдены.

По поводу решения с просветом между тайлами, которое предложил seaman выше. Я не нашёл готовых программ, которые бы преобразовывали тайлсеты так, чтобы тайл увеличивался на два пикселя в каждую из 4-х сторон. Возможно у меня получится написать плагин для GIMP. Сначала рассматривал вариант на скриптах C# с помощью GIMP#, но проект с 2012 года не развивается и работает только с GIMP 2.4. Остаётся вариант Python-Fu. У меня есть небольшой опыт скриптинга на Python BGE. Тем более опыт написания плагинов для GIMP может пригодится.


Сообщение отредактировал 8Observer8 - Понедельник, 17 Августа 2015, 16:06
8Observer8Дата: Воскресенье, 16 Августа 2015, 21:21 | Сообщение # 518 | Тема: Реализация столкновений в 2D танчиках
заслуженный участник
Сейчас нет на сайте
Цитата system ()
ты не прав, если у танка масса больше то он вполне может столкнуть другой танк, да и на скоросте 50+ кмч хоть не много да сдвинешь танк, если масса танка в который врезаешься не на 5+ тонн больше... в общем возьми в wot поиграй и посмотри как ведут сеья танки

Не может столкнуть, так как речь идёт об игре Battle City.


Сообщение отредактировал 8Observer8 - Воскресенье, 16 Августа 2015, 21:22
8Observer8Дата: Пятница, 14 Августа 2015, 20:17 | Сообщение # 519 | Тема: Оптимизация
заслуженный участник
Сейчас нет на сайте
У меня такой же вопрос. Я делаю клон Марио. Там каждый кирпичный блок должен быть отдельным спрайтом, чтобы его можно было разбить или толкнуть. Первый уровень я генерирую сразу весь. А во втором очень много кирпичных блоков. Я думаю, будет тормозить. Сильно ли коллайдеры влияют на производительность? Так получилось, что у меня на каждом блоке их по четыре. В общем, посоветуйте как быть.

Ещё такой момент. Я срисовываю карту в Tile Map Editor, но экспортирую не картой, а в текстовый файл.
8Observer8Дата: Четверг, 13 Августа 2015, 18:36 | Сообщение # 520 | Тема: Марио 2D. Вопросы.
заслуженный участник
Сейчас нет на сайте
Цитата seaman ()
У меня проблемы нет. Как я ее решил - я сказал в видео. Сделал зазор 1 пиксель.

Я показал за сполером выше. Там проблема не в один пиксел, гораздо меньше. Щель между тайлами. Я заметил, что в вашем клоне танчиков, проблему не видно на разрешении 800x600, а на 1024x728 её видно.

Добавлено (13 августа 2015, 13:00)
---------------------------------------------
Цитата seaman ()
Сделал зазор 1 пиксель.

Эту проблему "с засвечиванием соседнего тайла" я решил, тем, что тоже сделал зазор в один пиксел, но только с помощью этого плагина для GIMP'а

Добавлено (13 августа 2015, 13:10)
---------------------------------------------
seaman, проблема в том, что у вас между тайлами есть щели в некоторых местах. Вот я и спрашиваю, как её решить? У меня сейчас точно такая же проблема.



Добавлено (13 августа 2015, 18:36)
---------------------------------------------
Давайте пока проблему с щелями отложим. Искал я много в интернете, и пока ничего не нашёл.

Не нашёл я и решение следующей проблемы. Марио проваливается в предмет, то есть коллайдеры пересекаются и это здорово заметно:



Сообщение отредактировал 8Observer8 - Четверг, 13 Августа 2015, 22:00
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг