Quest3D - Русскоязычное сообщество

Quest3D => Программирование => Тема начата: Den_ya от 08 Апреля 2009, 21:27:31



Название: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 08 Апреля 2009, 21:27:31
- Создание установочного пакета (Installer) -

- Создание самостоятельной программы -

понятно что все пользуются в основном вторым способом

а как насчет первого кто нить разобрался что к чему?

да и вообще хотелось бы узнать об обоих способах их достоинства и  недостатки


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: barmadjar от 09 Апреля 2009, 00:25:28
Пользовался!
У меня проект с подгрузкой уровней, уровни (.cgr файлы) в отдельной папке.
В общем решил, что в таком случае лучше использовать инсталлер. Причем, инсталлер на данный момент весит 500 мб (а ведь это пока не предел - проект не закончен). Один раз установил - и потом из меню Пуск его,как обычную прогу запускаешь. Хотя, честно говоря, не могу сказать, в чем преимущества и недостатки. Мне кажется, что для таких больших проектов с подгружаемыми уровнями эффективнее использовать инсталлер. К тому же, вроде бы когда я попробовал сперва в экзешник опубликовать, у меня ошибки какие-то были, не помню точно.
Вот еще по поводу инсталлера http://guest3d.wohlnet.ru/forum/index.php?topic=612.0 (http://guest3d.wohlnet.ru/forum/index.php?topic=612.0) - читай последнее сбщ Viik'a


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 09 Апреля 2009, 00:35:14
мм... удобно конечно с уровнями (я так понимаю можно постепенно дорабатывать уровни),но ведь потом каждый может раскавырять .cgr ?

и еще хотел спросить получается проект открывается не через .ехе, а через Q3DStart.q3d

сообщение Viik'a  я видел но ничего не понял,кроме того что нужно после установки сделать инсталятор сторонней программой
мне кстати вот этот (http://ru.sminstall.com/) понравился


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: barmadjar от 09 Апреля 2009, 00:43:03
Да, я тоже об этом подумал
Хотя, проект я делал в v 4.0, а тогда еще .cgr файлы вкупе с .igr шли, а при публикации в инсталлер в комп устанавливались только .cgr, то есть в каком-то смысле некоторая защита была
Ныне же отказались от этого анахронизма (.igr), но вот видимо свои минусы тоже есть. Но в v 4.2 пока не пробовал публиковать в инсталлер, не знаю как там чего

Да, получается через Q3DStart.q3d

Честно говоря, с созданием инсталляторов (равно как и экзешников) впервые столкнулся в Quest3d, так что до сторонних installer maker'ов мне пока далеко :)


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 09 Апреля 2009, 00:52:54
если чесно то я тоже не силен :D просто программка вроде простая и на русском языке,наверное может пригодится не только для "квеста" но и для "быта"

я попробывал мне понравилось


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: barmadjar от 09 Апреля 2009, 00:56:51
Глянем! :)


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Viik от 09 Апреля 2009, 08:15:24
Цгрки из инсталлера открыть нельзя. Попробуй.


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 09 Апреля 2009, 10:54:37
у меня тоже вначале не вышло это из за того что добавлял сначало файлы по отдельности и поэтому при инсталяции все в одной папке получалось, нужно добавить файлы из папки см.рис.(instolator) то есть нужно добавить папку где хранится проект и все


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 09 Апреля 2009, 22:09:07
кстати очень интересно,а кто нибудь пробывал открыть .cgr после "квестовского" инстолятора?

у меня например не открывается


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: barmadjar от 09 Апреля 2009, 22:44:11
О чем, как я понимаю, и написал Viik  :D


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 09 Апреля 2009, 23:11:15
ааа ... я  и не понял ;D

эврика
Цитировать
Цгрки
- это значит .cgr ;D ;D ;D

а я про другое савсем подумал :D


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: barmadjar от 09 Апреля 2009, 23:44:09
Ничего, бывает :D :D :D
А это, однако, хорошая новость, что они не открываются :)


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 10 Апреля 2009, 00:05:34
это не может не радовать ;)

кто нибудь знает или понял

что означают папки и файлы:

- 3rd

- channels(понятно что каналы, но откуда такой непонятный шифр
например 0A97F0FB-BE04-46CC-93C0-59465B4775F9 )

- channels.lst

- HighPoly (что означает понятно,может это информация о геометрии,но зачем же тогда .cgr ?)

я попробовал удалить что нибудь и в итоги получилось что хватает для работы приложения  Q3DStart.q3d и Project Start.cgr(что остальное мусор что ли получается?),но вот если положить .cgr в папку то работать отказывается,может не понимает путь?

и еще у меня стал открываться .cgr !!! :-\(открываться начинает если оставить Q3DStart.q3d и Project Start.cgr,а остальное удалить)


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: barmadjar от 10 Апреля 2009, 00:25:34
Честно говоря, даже не задавался таким вопросом - подумал, что это чисто служебная информация (каналы, библиотеки), необходимая для функционирования созданного приложения, и навряд ли это понадобится мне.


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 10 Апреля 2009, 00:32:12
разобрался,если удалить или переименовать HighPoly.dll то .cgr начинает открываться :-\

наверное выход здесь один его как то  скрыть(спрятать)

Цитировать
служебная информация (каналы, библиотеки), необходимая для функционирования созданного приложения, и навряд ли это понадобится мне.

дык,интересно же :D


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Viik от 10 Апреля 2009, 09:10:34
Это походу баг 4.2.2, у меня кстати всегда открывает ))) ничего удалять не нужно, но может быть из-за того что делалось на моем компе.


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 10 Апреля 2009, 09:33:26
кстати я по новой сделал публикацию и теперь не открывается

такая мысль пришла что способ - Создание установочного пакета (Installer) - самый употребимый потому что:

- создание проекта размером более 50 мб
- управление уровнями(например есть проект 500 мб,в проекте произошли какие то обновления,и что бы не качать например все поновой просто выкладывается модорнезированый уровень .cgr весом например 50 мб ,так называемый патч, но это нужно конечно еще проверить)
- так как запускается проект через  Q3DStart.q3d то исключена возможность выдяргивания геометрии например вот такими програмками (http://www.deep-shadows.com/hax/3DRipperDX.htm)

вот жду коментарияв насчет этой мысли


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: KBECT0MAH от 10 Апреля 2009, 10:36:40
...
- так как запускается проект через  Q3DStart.q3d то исключена возможность выдяргивания геометрии например вот такими програмками
...

Создание инсталлятора оправдано для больших проектов и/или которые запускаются часто.
При инсталляции видно что идёт процесс и "комп" не просто так жужит и чирикает ;)
Один раз установил и пользуйся, не надо тратить время на распаковку. Публикация в единый
файл(*.ехе) это тот же инсталлятор, только он каждый раз распаковывается в темповую
директорию и оттуда запускается тот же *.q3d  ;)
Насчет того что невозможно "рипнуть", потому что *.q3d, это тоже заблуждение  ;D 
этот файл запускается через "вьювер", а не сам по себе, а из "вьювера" "рипается" на ура  ;)
Если у тебя двойной клик на *.q3d автоматически запускает "вьювер" с проектом,
то значит прописалась ассоциация при инсталяции. Но так же можно самому запустить
"вьювер" и в ручную указать файл *.q3d который надо "рипнуть"  ::)
Как уже писали в одной из тем, помешать может окно выбора разрешения.
Но если оно отключено, то "рипай" хоть "зарипайся"  :D
.


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 10 Апреля 2009, 10:43:46
о скоко интересного :D


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Viik от 10 Апреля 2009, 12:05:02
Сам не пробывал но поидее можно обмануть даже если нет окна выбора разрешения. Подозреваю что квест, при запуске с вобором разрешения пересоздает ДирекИкс девайс, а рип программа цепляеться за первый, тобиш за выбор разрешения. Так вот если сделать для своего проекта например лоадер или некое стартовое меню в оконном режиме, а потом переключиться на другую сгрку и вызвать новый старт 3д сцене, то рипалка должна обломаться.
Я честно говоря не знаю на сколько это критично, рипать модельки можно из многих игр, никто об этом особо не париться, сделайть какой-то реверс инжениринг из этого нельзя, ну а то что кто-то заюзает вашу модельку, по сути какая разница, всеравно сможете доказать что вы автор в случае конфликта.


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 10 Апреля 2009, 13:19:37
насчет рипа я не парюсь не забивайте себе голову,нет так нет (но все равно спасибо)

а вот с подгрузкой (вернее с заменой).cgr  в процессе работы
это реально(хотябы теоретически) ? то есть о том что я ниже писал (уровни)


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Viik от 10 Апреля 2009, 15:25:42
Ну поидее реально, после паблиша структура остаеться таже, поидее все должно работать. Попробуй простой пример, прямоугольник с текстурой и в разных версия сгр разную текстуру просто вставь.


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 10 Апреля 2009, 18:04:44
неа не получается,ладно пока оставим этот вопрос,так как с ним похоже мне придется долго разбираться


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: barmadjar от 10 Апреля 2009, 21:15:27
а вот с подгрузкой (вернее с заменой).cgr  в процессе работы
это реально(хотябы теоретически) ? то есть о том что я ниже писал (уровни)

Думаю, реально при соблюдении нескольких условий:

1. если уровень именно модернизирован, т.е. откорректирован (а не поставлен на его место другой с таким же названием)
2.все ключевые каналы остаются теми же (т.е. те паблик ченелы из подгружаемого уровня, которые вызываются в основном файле при помощи Public Call Channel'ов, менять нельзя, иначе придется их переопределять,а следовательно публиковать по новой, чего мы так стремимся избежать ;), а вот менять то, что к ним присоединено, можно.

Поясню мысль из 2-го пункта. Допустим, подгружаем мы уровень, из которого берем, к примеру, некий 3d object с именем LANDSCAPE (он, конечно же, должен иметь Public Status). В основном файле этот 3d object необходимо будет при подгрузке подключить к каналу 3d render, к которому уже подключены камера и источник света. Сделать это можно, подключив к каналу 3d Render канал Public Call Channel,имеющий соответствующий тип (в данном случае 3d object), в свойствах которого можно как раз задать ChannelGroup, из которого будет взят этот объект, и собственно имя канала (в данном случае LANDSCAPE), который будет подключен. Так вот, если мы при модернизации уровня заменим 3d object с именем LANDSCAPE на другой 3d object с таким же именем, это не сработает. Придется зайти в свойства Public Call Channel, через который мы подключаем этот объект, и определить по новой Target Channel Group Pool Name и Target Public Channel Name. А если мы сам канал оставим не тронутым, но будем менять у него сюрфейсы, текстуры и т.п., все должно сработать :)
Надеюсь, не запутал ;)


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Den_ya от 10 Апреля 2009, 22:16:20
Цитировать
Надеюсь, не запутал

в процессе будет ясно что к чему


Название: Re: 1.10: Введение: Публикация (Publication)
Отправлено: Cludz от 13 Ноября 2009, 09:38:56
в ранних версиях квеста(ниже 3.6) можно было заменять файлы при соблюдении нескольких условий:
при паблишенге в инсталер убрать галочки zip компрешын и not edit
соблюдать розположение чанелов которое хранится в файле .igr
в весиях выше 4. можно посоздавать чанелы и выстроить логические цепочки, сами чанелы не будут нести нужной информацыи а будуть случыть оболочками
как ето зделать описал выше barmadjar
такая заморочка оправдана для большых проектов паблишынг которых занимает много времени(сам встречал проекты не больше 300 метров)