20 Мая 2024, 06:26:48
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Навигация по форуму







guest3d
Quest3D - Русскоязычное сообщество > Quest3D > Программирование > Динамическая загрузка
Динамическая загрузка
(Прочитано 16052 раз)
  1 [2]
Печать
Egor | * | Новичок | Сообщений: 23 | «Ответ #15 09 Июня 2012, 14:35:30 »
Re: Динамическая загрузка |
15
Sqwer
как только свой фрейворк/двиг/врапер   уже имеет всё это
В том то и дело что свой двиг есть не у всех.. А начинали именно с написания двига, человек потратил больше года, и в результате можно было только наблюдать чайники с кирпичной текстурой и тп с отсутсвием эдитора итд и тп. После этого я перебрал несколько десятков движков под нашу задачу, в результате остался единствееный вариант Quest3d, который пока успешно с ней справляется. Еслиб я имел возможность написать свой двиг, причём который был бы лутше квеста, то думаю я так бы и сделал..
Denil-Tornado | **** | Старожил | Сообщений: 313 | «Ответ #16 19 Июня 2012, 16:49:29 »
Re: Динамическая загрузка |
16
Прогать свой движок, задача не из лёгких. Я как-то начал его делать, (собственно почему меня долго и не было на форуме) прочитал 6 книг и облазил все популярные сайты по программированию, да что-то получалось, строить простенькие сцены, но как дело дошло для реализации компиляции проекта, собственно разработать эту функцию, то на этом великое моё вдохновение исчерпалось и забил на всё. Хотя вот недавно я лазил по сайту Майкрософта сообщество программистов и наткнулся на такую вещь, что установив Windows SDK, можно использовать чего-то там и внедрить в свой проект уже заложенный в "ОКНАХ" стандартный компилятор. Мож кто сталкивался с этим? А писать игру чисто на коде на мой взгляд это самоубийство.
Цитировать
собирали инсталяху с помощью "левой" приблуды(не помню как называется, но инсталляторов таких полно) после распаковки проекта, эта приблуда автоматом запускала .exe, который мы заблаговременно создали(именно этот .exe определял путь по которому он находится, далее создавал в моих документах текстовый файл, в который и записывал этот самый полный путь к проекту), ну а после старта квестового проекта, оставалось только прочесть путь из этого текстовика..
В прицепе это вариант запрогать небольшое консольное приложение, которое могла бы выслеживать путь. Относительно эта идея мне самому в голову пришла недавно, до прочтения вашего поста, но я надеялся что это реализовать можно проще. Я просто встречал один квестовский проект, помойму даже где-то на оф. сайте скачивал, там проект хоть и с внешними файлами, но запускался без каких либо вмешательств других приложений и неважно в какой директории его распокавали.
« Последнее редактирование: 19 Июня 2012, 17:06:47 от Denil-Tornado »
Ruslan | ***** | Ветеран | Сообщений: 664 | «Ответ #17 19 Июня 2012, 17:30:39 »
Re: Динамическая загрузка |
17
Denil-Tornado
Можно к своему движку подключить lua script или angelscript, управлять менеджерами через скрипты, тем самым не придется вообще, что либо перекомпилировать.
В качестве редактора мы использовали непосредственно 3dsMax, написав свою утилиту-экспортер на maxScript, получилось очень удобно, так как нет необходимости что-то куда то тягать, строишь сцену в максе, назначаешь dx-материалы, настраиваешь лоды, меняешь настройки различные в утилите, затем жмешь на экспорт и все готово( все текстуры автоматически собираются в папку сцены и так далее)

Цитировать
Я просто встречал один квестовский проект, помойму даже где-то на оф. сайте скачивал, там проект хоть и с внешними файлами, но запускался без каких либо вмешательств других приложений и неважно в какой директории его распокавали.
Возможно написали свой канал, который ищет папку в которую распаковался квестовый проект.. а он автоматом линкуется к проекту.
« Последнее редактирование: 19 Июня 2012, 18:12:17 от Ruslan »
Sqwer | ***** | Ветеран | Сообщений: 540 | «Ответ #18 19 Июня 2012, 18:04:07 »
Re: Динамическая загрузка |
18
Цитировать
собирали инсталяху с помощью "левой" приблуды(не помню как называется, но инсталляторов таких полно) после распаковки проекта, эта приблуда автоматом запускала .exe, который мы заблаговременно создали(именно этот .exe определял путь по которому он находится, далее создавал в моих документах текстовый файл, в который и записывал этот самый полный путь к проекту), ну а после старта квестового проекта, оставалось только прочесть путь из этого текстовика..
жесть да )) но другого способа мы не нашли, походу его и нету..


эээ, было немного не так.

была создана ЛАУНЧЕР .exe, котороя  прежде всего создавала текстовый файл (содержащий путь к проекту) в "моих документах"   а далее запускала ехе самого квествого проекта.

PS. файл в моих документах  можно былоб заменить на  запись в реестре, но т.к. я не любитель захламлять систему  выбрал всё же файл.

Собственно, в чём профит:

1. Открывается поддержка для своих форматов всего и вся (от мешей, текстур  до  настроек и служебной инфы)
да, есть способ сохранять  в каналах квеста любую бинарную информацию канал "БУФФЕР", но почему мы от этого отказались  написано в след подпункте.

2. БЫСТРАЯ замена контента, захотел заказчик поставить новый домик, или заменить один на другой - пожалуйста! Мы просто  перезаписываем файлик с моделью в папке сцены. без всяких там перекомпиляций проекта. А если проект гигантский - это уже весьма существенно.
есть способ  компиляции отдельных файлов cgr, но каждая компиляция проекта  изменяет набор используемых dll. Ничего в проекте не менешь, просто  перекомпилируешь  и уже другой набор длл, что весьма странно.

3. Свой формат предполагает минимизацию лишней информации. - Проект худеет, как в оперативке так и на винте.


Важно знать, что  ехе лаунчер  должен находиться в одной папке с ехе квестового проекта
попытка запуска лаунчера из другой папки  не даст  запустить квестовое приложение
оно сругнётся




Цитировать
оф. сайте скачивал, там проект хоть и с внешними файлами, но запускался без каких либо вмешательств других приложений и неважно в какой директории его распокавали.
у нас примерно также,
Реализуется по той схеме, что выше написал,только вместо самописного txe лаунчера  можно использовать квестовый лаунчер ехе, работающий  по таким же принципам. 
« Последнее редактирование: 19 Июня 2012, 18:14:56 от Sqwer »
mike | * | Новичок | Сообщений: 3 | «Ответ #19 13 Ноября 2012, 11:47:11 »
Re: Динамическая загрузка |
19
Привет народ, давно не виделись! Ну собственно по существу.

Вопрос Дурацкий но всё же спрошу.

Как работает Load ChannelGroup, я хочу динамически подгрузить канал, но в итоге квест выдаёт ошибку,
Цитировать
A Group Loader and a Buffer channel are both linked to Load ChannelGroup channel, the Buffer channel will be used to load the group, when it contains data.
но как я понял это ругается канал буфера, отключая его загрузка всё равно не идёт.

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

О_о М да сайт походу дело вымирает... Нехорошо!
Или просто все Quest3D 5 взялись за изучение?

Ну объясните хотя бы как Group Loader работает. Скажем так: Мне нужно загрузить текстуру или видео из корневой папки. Так вот путь я прописал и Group Loader Status уведомляет что объект загрузился, а проблема собственно в чём, как теперь эту загруженную текстуру скажем на плоскость натянуть.

Привет, всё проще.
Пример создания экрана загрузки при помощи Lua script

http://quest3d.ru/wp-content/uploads/quesr3d_ru_loading_screen_01.jpg

http://quest3d.ru/wp-content/uploads/quesr3d_ru_loading_screen_04.jpg

http://quest3d.ru/wp-content/uploads/quesr3d_ru_loading_screen_03.jpg

http://quest3d.ru/wp-content/uploads/quesr3d_ru_loading_screen_02.jpg

Скачать урок можно тут http://narod.ru/disk/62315523001.52fc61640737596815146795ea9733b8/loading.rar.html

Ссылка на статью http://quest3d.ru/?page_id=690&mingleforumaction=viewtopic&t=2

Новый форум Quest3D http://quest3d.ru/?page_id=690
 
  1 [2]
Печать
 
Quest3D - Русскоязычное сообщество > Quest3D > Программирование > Динамическая загрузка
Перейти в: