Программа-просмотрщик объектов: требуется помощь программистов!

Автор Zontik, 21 июля 2017 10:16:53

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Maxim

Главное чтоб был список моделей, чтоб они быстро прогружались и была информация по ним, по текстурам, которые задействованы.
Выглядит на скриншоте от Chuzhoi - красиво, да. Но нам же не на красоту отображения большой модели любоваться, а работать. И работать быстро. Когда под 1000 моделей в папке и когда ты ставишь на уровень какой-нибудь 100500-й стол или факел — там уже не до крутых просмотрщиков с красиво вращающейся моделью.
Still they talk anyway
When there's nothing to say
There's so much said in empty words...

Chuzhoi

#136
Цитата: Force от 01 августа 2017 18:01:36
Поэтому я и не планирую припахивать никакие осевые интерфейсы открытия файлов и прочего, дабы не городить заросли ветвлений.
Вообще-то вывести системное окно открытия файла и потом прочитать имя выбранного файла - раз плюнуть.

Цитата: Maxim от 01 августа 2017 18:05:32Главное чтоб был список моделей
Я не против, если Форс скажет, что это просто, и согласится. Или скажет, что это непомерно сложно, и согласится.

Цитата: Force от 01 августа 2017 18:01:36
Можете панельку выбора тоже изобразить.
Завтра-тире-послезавтра. Пусть Макс пока порисует.

Chuzhoi

Цитата: Force от 01 августа 2017 18:01:36Скажу по секрету, у меня интерфейсы реализованы чтением xml-файлов, в которых по аналогии с HTML и CSS описаны рисуемые элементы, их размеры, пропорции и прочие свойства в атрибутах тегов.
Это все очень интересно, но есть вопросы:
1. У тебя поддерживаются текстовые поля (в которых можно вводить текст с клавиатуры и копипастить из буфера/в буфер)?
2. Поддерживается ли обработка Mouse Over (чтобы при наведении мыши можно было подсветить кнопку, подчеркнуть надпись, изменить форму курсора мыши и т. п.)?
3. Есть ли возможность реализовать полосы прокрутки (списки-то могут быть большие)?

Force

#138
Chuzhoi, повторюсь, у меня нет никаких осевых API в проекте, кроссплатформа же. И говоря про заросли ветвлений я имел в виду именно ветвления в этих самых апи.

Когда я делал интерфейс, я ориентировался в первую очередь на воссоздание интерфейса оригинальных воров. Вспоминаем его. Там есть изменение цвета по mouse over, mouse out, mouse active (click), еще там есть выделение элемента (рисуется рамочка вокруг него), ввод текста, скролл списка, чекбоксы и таскание бегунка яркости/громкости :). Я успел сделать только mouse over, mouse out, mouse active. Кроме того реализованы элементы, содержащие текст и смена цвета этого самого текста в зависимости от действий мыши. Ну и обработка клика на таком элементе тоже имеется. Поскольку не предполагается никакой системный интерфейс, скролл длинных списков жизненно необходим, но я отложу это на более поздние этапы разработки программы, как и ввод в поле поиска и сам поиск. Но нарисовать вы можете всё сразу.

По поводу копипасты - не уверен, как и относительно формы курсора.

Кстати да, если есть пожелания относительно интерфейса вора, высказывайтесь. Вдруг вам что-то в нем жутко не нравилось или очень не хватало. А возможно стоит сделать что-то как-нибудь иначе чем там.

Призрак Boris'а3000

#139
Цитата: Zontik от 01 августа 2017 16:25:03
Во всех остальных случаях редактор неудобен.
И в этом случае он тоже неудобен.

Цитата: Zontik от 01 августа 2017 16:25:03
Хотя что там у TDBonko вообще просматривать-то? Все модели на замену оригинальным
Какая связь между предназначением модели и необходимостью её просмотра?
Ну и повторяю в третий раз:
Цитата: Boris3000 от 01 августа 2017 11:24:37
Так будет куда быстрее подбирать скины для моделей -- http://darkfate.org/forum/index.php?topic=374.msg229382#msg229382

Цитата: Zontik от 01 августа 2017 16:25:03
добавочные легко вычисляются по имени файла: ns - no sword, к примеру. То есть безоружный
Угу. Я это понял уже ПОСЛЕ просмотра. Ну, раз всё так легко, почему бы вам просто не переименовать модели, добавив подобные тыр-пыр к именам файлов? Все эти тыр-пыр вы легко запомните, после чего -- Alt+F7 в Тотал Коммандере.

Цитата: Zontik от 01 августа 2017 16:25:03
Хотя если речь идет о каком-то другом частном случае - тут я, возможно, промахнулся
Их полно, и нетрудно догадаться, что будут ещё. Или мододелание завершилось? Но вы почему-то не хотите посмотреть даже на миллиметр дальше собственного носа.

Цитата: Zontik от 01 августа 2017 16:25:03
на все такие случаи нужна функциональность последней версии Фотошопа
Фотошоп -- редактор. Редактор не нужен. ACDSee будет достаточно.

Цитата: Zontik от 01 августа 2017 16:25:03
если надо накидать идей, чтобы затормозить, а то и полностью парализовать разработку - только скажите
Кидай. Не тебе и не мне решать, затормозит это работу или нет, т. к. мы в этом не разбираемся. Об этом должен сказать исполнитель. Я, например, без понятия, насколько тяжело добавить возможность ручного выбора текстуры. Мне кажется, что это полнейшая ерунда, раз программе по-любому придётся искать некую текстуру в некой папке и её натягивать. Но в любом случае -- сначала составляется список пожеланий, а потом уже из них выбираются реальные. И делать это надо совместно с программистом, а не самому.
И что касается моих пожеланий, то, если кто до сих пор не понял, они касаются конечной версии программы, а не начальной.
[spoiler]Хотя я сильно опасаюсь, что начальная и конечная версии -- это будет одно и то же.[/spoiler]

А чего лично ТЫ кипятишься, я вообще не понимаю -- ты этой проги даже не увидишь. Или ты уже купил себе GTX 1090 Ti?


Цитата: Chuzhoi от 01 августа 2017 17:32:55
выводить модель в маленьком окошечке без возможности покрутить - это несколько кощунственно
Да. Если маленькое окошечко, то должна быть возможность по клику просмотреть в полный рост, как картинку на форуме. Иначе придётся покупать монитор, как у Вороба.
Ну или хотя бы по вертикали вытянуть окошко на высоту экрана.

Цитата: Chuzhoi от 01 августа 2017 17:32:55
идея возможности задавать дополнительные папки для поиска текстур, безусловно, хороша. Но это можно сделать в ini-файле, который редактируется текстовым редактором
Как? На каждый скин закрывать прогу, лезть в FAR, открывать иник, вбивать туда руками путь для текстур, потом снова запускать прогу? Проще тогда как обычно -- накопировать в том же FAR'е скинов в общую кучу и переименовывать их.

Что касается интерфейса, то до тех пор, пока к просмотрщику не будет прикручен функционал каталогизатора, я за вариант Чужого.


Цитата: Maxim от 01 августа 2017 17:53:12
Откуда берутся какие-то уже ваши заключения о том, что надо и как это должно быть?
Оттуда, что вы тут не одни. И если реализовать что-то дополнительное не составляет особого труда, то почему нет?

Цитата: Maxim от 01 августа 2017 17:53:12
Если сделать не получается как мы написали, то не надо делать вообще ничего. Потому что другого нам не надо
Сильная заява. Не надо вам -- надо другим.

Цитата: Maxim от 01 августа 2017 17:53:12
быстро найти/вспомнить какую-нибудь модель для определённой локации или заниматься перебором подходящих моделей в окне просмотрщика. Как в магазин сходить и выбирать с витрины
А в магазинах у нас что уже давно? Правильно -- компьютеры с СУБД.
Други, вы сами не понимаете, что вам надо. То есть не понимаете, как это называется. Просмотрщик -- это программа, которая предоставляет ПОЛНЫЕ возможности по просмотру объектов заданного типа, и при этом не предоставляет никаких средств для их автоматизированного поиска -- только вручную по дереву Проводника.
А то, что описал и нарисовал ты, называется каталогизатор. С превьюшками. Таким образом именно функционал СУБД выходит в ваших требованиях на первый план, а просмотр -- это лишь довесок. Потому что там, где необходимо ИСКАТЬ, там привет СУБД.
И "поиск" методом перелистывания всей кучи вручную -- это не поиск, а извращение. Ненамного лучше, чем перебирать в Дромеде. Это лишь отсрочивает наступление "информационного коллапса", но не решает проблему на корню.
Corsair HX1000i / Gigabyte GA-X48-DS4 / Intel Core2-Quad Q9650@4.1GHz / Hynix 8GB DDR2-800@1100MHz /
EVGA 6GB GDDR5 <GeForce GTX 980Ti> K|NGP|N Edition / Creative SB X-Fi Xtreme Gamer Fatal1ty Pro Edition /
2xSSD Intel X25-M 120GB в RAID 0 / Samsung SyncMaster 957MB (CRT 2048х1536) / UPS PCM SKP-2000A /
Windows XP Professional SP3 VL 32-bit + Windows 7 Enterprise SP1 U 64-bit / ForceWare 368.81 / New-Dark 1.26

nemyax

А дайте ссылку на пак с ТЫСИЧЯМЕ объектов. Хоть посмотреть, о чём базар.
Желаю тебе из тысячи рулеток одну — самую русскую!
Желаю тебе из тысячи надежд одну — самую крупскую!

Призрак Boris'а3000

#141
nemyax
10 по 100 или 100 по 10 устроит? Лезешь к Риффу на ФТП, Pub\edirors\dromed, и там папки models и objects. Я даже попыток не предпринимал просмотреть всё это добро через редактор.

А, и ещё есть тысиче с гаком ФМ-ок, которые тоже неплохо бы просмотреть, что из них можно скомуниздить.
И ещё штук 10-20 текстурно-объектных паков для оригинала.
Corsair HX1000i / Gigabyte GA-X48-DS4 / Intel Core2-Quad Q9650@4.1GHz / Hynix 8GB DDR2-800@1100MHz /
EVGA 6GB GDDR5 <GeForce GTX 980Ti> K|NGP|N Edition / Creative SB X-Fi Xtreme Gamer Fatal1ty Pro Edition /
2xSSD Intel X25-M 120GB в RAID 0 / Samsung SyncMaster 957MB (CRT 2048х1536) / UPS PCM SKP-2000A /
Windows XP Professional SP3 VL 32-bit + Windows 7 Enterprise SP1 U 64-bit / ForceWare 368.81 / New-Dark 1.26

nemyax

Цитата: Maxim от 01 августа 2017 17:53:12
Вот говорят, мол, TTLG — там крутые чуваки, да разное могут. А у нас Force, который аж движок создаёт, ещё и в одиночку. Обалдеть.
Ну на ttlg был тов. Volca, который пилил в одиночку собственный движок (https://sourceforge.net/projects/opde/), но он накодил рендеринг и сдулся. Не сдуваются в этом деле только самые упёртые.
Желаю тебе из тысячи рулеток одну — самую русскую!
Желаю тебе из тысячи надежд одну — самую крупскую!

Force

nemyax, он использовал Ogre 3D для рендеринга. То есть, можно сказать, он пошел по популярному пути на тот момент - взять готовый графический движок. Основная заслуга Волки в том, что он описал в своем движке загрузку основных форматов ресурсов, используемых вором. Именно его исходники я исследую в поисках описания форматов. Читать код оригинального вора для этих целей не представляется возможным... по крайней мере для меня.

nemyax

Цитата: Force от 02 августа 2017 10:01:23
Читать код оригинального вора для этих целей не представляется возможным... по крайней мере для меня.
То есть даже опытному программисту этот код кажется макаронным монстром?
Желаю тебе из тысячи рулеток одну — самую русскую!
Желаю тебе из тысячи надежд одну — самую крупскую!

Force

nemyax, да, он ужасен. Возможно, если б я поковырялся в нем месяцок, я бы чувствовал себя там уверенно, но не вижу в этом смысла... Смысл был бы ковыряться в Нью Дарке, но его тщательно прячут. Но главный нюанс заключается в том, что C++ - не моя основная специальность, поэтому есть возможность просто не работать с плохим кодом, а отсюда и меньший опыт разбираться в "сортах говна"  :rolleyes:, уж простите мой французский :biggrin:. Мне очень понравился современный C++, его мощь, гибкость и потенциал, поэтому изучение шло легко и увлекательно. Я пока изучал плюсы, значительно усовершенствовал программистские навыки в общем, крайне толковая книжка попалась с дельными рекомендациями.

Zontik

ЦитироватьА вот идея возможности задавать дополнительные папки для поиска текстур, безусловно, хороша
Текстуры могут находиться только в трех жестко фиксированных местах. Если они там не находятся, пользователю просто следует навести порядок на своем жестком диске. И если что, это не я сказал, а PinkDot, но я с ним полностью согласен.
ЦитироватьГлавное чтоб был список моделей
+100%. Это основная функциональность программы, как можно прятать ее в выпадающие окошки?
ЦитироватьА чего лично ТЫ кипятишься, я вообще не понимаю -- ты этой проги даже не увидишь.
Да я сам не знаю. По сути, идея Максима, ему эта программа нужна как хлеб, и не в необозримом будущем, а прямо сейчас. Поэтому я против всего, что может неоправданно затормозить выпуск хотя бы пилотной версии. Мне эти частные случаи кажутся совершенно не оправданными.
А потом, ведь и у меня может сломаться какая-нибудь железка. Никто не застрахован.
ЦитироватьА дайте ссылку на пак с ТЫСИЧЯМЕ объектов.
Ссылку не дам, но сейчас глянул в давно забэкапленной версии - так там в папке OBJ 1271 файл. Текстуры не в счет, конечно. Хорошо, штук 200 я могу отсеять просто по именам. Но даже в тысяче ориентироваться уже... малореально. Особенно когда не помнишь точно, есть ли у тебя модель, которую ты ищешь.
А вообще есть хороший способ избавиться от нужды в просмотрщике. Не надо просто городить кампаний. Краткость - сестра таланта.
Дайте глазам отдохнуть! Тёмное место

Призрак Boris'а3000

Цитата: Zontik от 02 августа 2017 11:05:47
Текстуры могут находиться только в трех жестко фиксированных местах. Если они там не находятся, пользователю просто следует навести порядок на своем жестком диске.
А, то есть "навести порядок на жёстком диске" -- это растиражировать все пургаторовские скины по всем моделям персонажей. Соответственно, каждую модель придётся ещё и поместить в отдельную папку, в чём совершенно нет необходимости, если у модели нет чётко назначенного скина. При этом для некоторых операций (например пакетная обработка файлов) бывает удобнее, чтоб всё лежало в одной папке.
Извините, но я не слишком большой любитель плодить дубликаты файлов. И чтоб что-то изменить в одном скине, надо потом ещё и менять все копии. Вот уж порядок так порядок. Шурик, это не наши методы. (с)

Цитата: Zontik от 02 августа 2017 11:05:47
это не я сказал, а PinkDot
Не надо повторять за людьми всякие глупости. "Порядок на винте" определяется вовсе не структурой Вора.
А иначе я могу точно так же сказать -- "модели в игре могут находиться только в двух жёстко фиксированных местах. Если они там не находятся, пользователю просто следует навести порядок на своем жестком диске."
Ну, типа, чтоб игру запустил и сразу увидел желаемую модель. И просмотрщик не нужен. Железная логика, да? Вот и делай себе по копии игры на каждую модель.

А идея о ручном выборе текстуры, она даже не просто хороша -- это настолько естественная вещь, что это даже и не идея вообще. Это просто сама собой разумеющаяся вещь. Кто хоть раз пробовал подбирать скин для модели, тот поймёт.

Цитата: Zontik от 02 августа 2017 11:05:47
ведь и у меня может сломаться какая-нибудь железка. Никто не застрахован.
Ну так ты ведь останешься верен принципам до конца, айда на Авито, и купишь себе на замену точно такое же, верно? :biggrin:
Corsair HX1000i / Gigabyte GA-X48-DS4 / Intel Core2-Quad Q9650@4.1GHz / Hynix 8GB DDR2-800@1100MHz /
EVGA 6GB GDDR5 <GeForce GTX 980Ti> K|NGP|N Edition / Creative SB X-Fi Xtreme Gamer Fatal1ty Pro Edition /
2xSSD Intel X25-M 120GB в RAID 0 / Samsung SyncMaster 957MB (CRT 2048х1536) / UPS PCM SKP-2000A /
Windows XP Professional SP3 VL 32-bit + Windows 7 Enterprise SP1 U 64-bit / ForceWare 368.81 / New-Dark 1.26

Force

Boris3000
Цитата: Boris3000 от 02 августа 2017 12:14:37
купишь себе на замену точно такое же
Я так полагаю, средний род тут выбран неспроста  :biggrin:.

Призрак Boris'а3000

Цитата: Force от 02 августа 2017 12:30:10
Цитата: Boris3000 от 02 августа 2017 12:14:37
купишь себе на замену точно такое же
Я так полагаю, средний род тут выбран неспроста  :biggrin:.
Ага. "Устройство". :biggrin:

Хотя если брать те времена, то у Зонтика весьма крутая видюха. У неё аж 256-битная шина памяти вкупе с GDDR3 одновременно. Только благодаря этому у Зонтика и ворочается сейчас хоть что-то.
Я даже слегка удивлён -- как это Зонтик, не гонясь за вооружениями, купил такую.
Corsair HX1000i / Gigabyte GA-X48-DS4 / Intel Core2-Quad Q9650@4.1GHz / Hynix 8GB DDR2-800@1100MHz /
EVGA 6GB GDDR5 <GeForce GTX 980Ti> K|NGP|N Edition / Creative SB X-Fi Xtreme Gamer Fatal1ty Pro Edition /
2xSSD Intel X25-M 120GB в RAID 0 / Samsung SyncMaster 957MB (CRT 2048х1536) / UPS PCM SKP-2000A /
Windows XP Professional SP3 VL 32-bit + Windows 7 Enterprise SP1 U 64-bit / ForceWare 368.81 / New-Dark 1.26