Sidebar

Портирование Xash3D на android

gfdjr5

[NULL]
Nov 25, 2012
563
0
0
a1batross said:
Вообще, давно я намереваюсь систему смены разрешений переделать. Не нравится, что многие режимы захардкодены.
Да, у меня тоже такая идея есть. Вынести определения видеорежимов в отдельный конфиг хотелось бы.
 

Дядя Миша

Супер Модератор
Mar 28, 2010
15,347
235
0
Кубань
2 a1batross: голдсорс тащем-то даже на Voodoo работал когда-то ;)

Вообще, давно я намереваюсь систему смены разрешений переделать. Не нравится, что многие режимы захардкодены.
Не надо давать пользователю вносить свои режимы. Он мигом поставит там 1024х0 и повесит видеодрайвер или еще что-нибудь придумает.
Что меня удивило, так это и в п2 осталось.
Я терпеть не могу лазить в меню. Если ты не заметил, там до сих пор некоторые странички недостроены.
 

gfdjr5

[NULL]
Nov 25, 2012
563
0
0
Дядя Миша said:
Не надо давать пользователю вносить свои режимы. Он мигом поставит там 1024х0 и повесит видеодрайвер или еще что-нибудь придумает.
Его будет только его проблема, которая будет касаться лишь его.
Какая разница? Пусть ставят. Это делается для людей, которым действительно надо, которые добавят для себя дополнительный, отсутствующий для их разрешения экрана, видеорежим, и смогут играть на нём, а не для "умников", решивших поиграться с настройками. Да и проверить весь этот набор на валидность внутри движка можно - если выпадет такой, как, например 1024x0, то автоматом подгонять неправильный размер по одной или обоим осям под соотвествие минимальному или сходному в отношении 4:3/16:9 (1024x320/1024x640/1024x768/etc). Удобно же? По крайней мере это будет удобнее и для разработчиков, т.к. не придётся идти и добавлять, если понадобится, новое разрешение в массив видеомодов, а потом ещё добавлять новую строку в массив видеомодов меню, при этом сохраняя порядок в обоих местах. Не то, что бы это было сложно, просто куда удобнее будет вносить изменения именно таким образом.
 
Last edited:

KiQ

New member
Jul 12, 2010
397
2
0
2 Дядя Миша:
видел, видел %)

[ADDED=KiQ]1431283836[/ADDED]
Почему просто не строить список налиту из поддерживаемых монитором разрешений?
 
Last edited:

Дядя Миша

Супер Модератор
Mar 28, 2010
15,347
235
0
Кубань
Его будет только его проблема, которая будет касаться лишь его.
Рассуждаешь как конструкторы с автоВАЗ - если человек купил нашу машину, то это проблема, которая теперь будет касаться только его.
 

gfdjr5

[NULL]
Nov 25, 2012
563
0
0
Дядя Миша said:
Рассуждаешь как конструкторы с автоВАЗ - если человек купил нашу машину, то это проблема, которая теперь будет касаться только его.
:D
А зачем человеку может понадобиться выставлять режим 1024x0?
Для отказоустойчивости я и предлагаю внести дополнительную проверку всех введённых модов на валидность и автоматом их исправлять в движке.

А ещё неплохо бы добавить запрет на выставление разрешения, большего, чем нативное разрешение монитора, если сейчас такого нет.
 

GNU/Hurt

Maïté
Mar 5, 2014
1,094
23
0
>Не надо давать пользователю вносить свои режимы. Он мигом поставит там 1024х0 и повесит видеодрайвер или еще что-нибудь придумает

>This "users are idiots, and are confused by functionality" mentality of GNOME is a disease. If you think your users are idiots, only idiots will use it.

интересно как отношение к людям влияет на принципы построения интерфейса программ. а в результате, интерфейсы становятся такими:
11-3-MarcusFigure6.jpg


>А ещё неплохо бы добавить запрет на выставление разрешения, большего, чем нативное разрешение монитора, если сейчас такого нет.
плохо -- целых два use case выкинул. они редкие, но встречаются.
 
Last edited:

Дядя Миша

Супер Модератор
Mar 28, 2010
15,347
235
0
Кубань
А зачем человеку может понадобиться выставлять режим 1024x0?
А зачем людям веревка достаточной длины? Чтобы выстрелить себе в ногу!
Для отказоустойчивости я и предлагаю внести дополнительную проверку всех введённых модов на валидность и автоматом их исправлять в движке.

А ещё неплохо бы добавить запрет на выставление разрешения, большего, чем нативное разрешение монитора, если сейчас такого нет.
Всё там есть, даже защита от неверной кадровой частоты есть.
2 GNU/Hurt: перефразируя известный закон мэрфи, процитированный тобой: создайте чернобыльскую АЭС, со всеми системами защиты, но дурак их обязательно отключит и устроит свой маленький чернобыль 86.
 

gfdjr5

[NULL]
Nov 25, 2012
563
0
0
Дядя Миша said:
А зачем людям веревка достаточной длины? Чтобы выстрелить себе в ногу!
Да? Это так, оказывается, работает...

Дядя Миша said:
Всё там есть, даже защита от неверной кадровой частоты есть.
В новых билдах?
Если выставить большое разрешение и перенести всё на другую машину, с меньшим размером экрана, то при включении окно будет больше.

[ADDED=gfdjr5]1431291038[/ADDED]
Дядя Миша said:
создайте чернобыльскую АЭС, со всеми системами защиты, но дурак их обязательно отключит и устроит свой маленький чернобыль 86.
Или прикажет их отключить...
 
Last edited:

a1batross

Umu~!
Jan 6, 2015
664
27
Всё это время думал, что же.никто не пишет, пока утром не заметил перехож на вторую страницу.

А по делу, для смены разрешения сделать проверки.
 

a1batross

Umu~!
Jan 6, 2015
664
27
Чем душа хочет заниматься, тем и занимается. После этого осознания я начал понимать прогеров из вальвы, которые не хотят нам делать третью часть сами знаете какой серии.
 

Raid

VIP
Jul 11, 2006
8,308
33
220
0
CSM-чат
2 gfdjr5:
Напомни мне, зачем пользователю что-то запрещать, вместо того, чтобы просто выводить ворнинги при попытках сделать несделываемое?
 

gfdjr5

[NULL]
Nov 25, 2012
563
0
0
FiEctro said:
2 gfdjr5:
Вы бы лучше самим портом занялись. Сдалось вам это разрешение?
Да вот, помимо порта, обсуждаем список фич, которые, также, было бы неплохо реализовать.

a1batross said:
Чем душа хочет заниматься, тем и занимается. После этого осознания я начал понимать прогеров из вальвы, которые не хотят нам делать третью часть сами знаете какой серии.
Ты, похоже, не знаешь, но у Valve даже политика такая - давать возможность работникам работать над теми проектами, над которыми им больше нравится и хочется работать. Поэтому не стоит ждать в будущем ХЛ3, они ещё не во всех своих играх систему шапок реализовали.

[ADDED=gfdjr5]1431339185[/ADDED]
Raid said:
2 gfdjr5:
Напомни мне, зачем пользователю что-то запрещать, вместо того, чтобы просто выводить ворнинги при попытках сделать несделываемое?
Выводить варнинг о том, что разрешение окна в два раза больше разрешения твоего экрана? А ты его увидеть сможешь? Или только усы Фримена увидишь в меню? В таком случае, под запретом имеется ввиду, что размер окна автоматом будет переключён на нативный размер экрана, а там уже и варнинг можно вывести.
 
Last edited:

a1batross

Umu~!
Jan 6, 2015
664
27
2 gfdjr5:
Ты наоборот меня понял. Над портом работают точно также. Что сейчас захочется пилить, то и пилится. Даже я не могу сказать, какой баг я завтоа исправлю. Есть какой-то список дел, вот и берутся идеи из него.
 

gfdjr5

[NULL]
Nov 25, 2012
563
0
0
a1batross said:
2 gfdjr5:
Ты наоборот меня понял. Над портом работают точно также. Что сейчас захочется пилить, то и пилится. Даже я не могу сказать, какой баг я завтоа исправлю. Есть какой-то список дел, вот и берутся идеи из него.
Так и я тебе говорю, что в Valve работают также. Не собирают команду и не говорят: "Так, народ, делаем новую ХЛ3, какие идеи?", после чего все в течении n количества лет пилят новую игру. Каждый волен работать над тем проектом, который ему больше нравится. Надоело работать над одним - поработал над другим или создал новый.
 

gfdjr5

[NULL]
Nov 25, 2012
563
0
0
a1batross said:
__attribute__((noreturn)) не помог. Все предыдущие функции всё ещё в стеке.
На какой функции этот атрибут был установлен? Он показывает, что возвращения из функции в основной поток не будет, но это не значит, что можно выгружать данные из стэка.
 

a1batross

Umu~!
Jan 6, 2015
664
27
Пробовал на Host_NewInstance() и на pChangeGame().

Зато я тут баг исправил с падением на выходе. Оказалось, что в xash.so каким-то образом вместо его Host_Shutdown оказывается тот, который из game_launch. Адреса одинаковые, ага. Поменял названия -- всё заработало как надо. o_O

Что интересно, они оба никак не связаны.
 

gfdjr5

[NULL]
Nov 25, 2012
563
0
0
Даже несмотря на это, стэк остаётся с данными, т.к. за пределы видимости мы не выходили. В ксаше память под структуры выделяется на стэке и сразу, а не динамически и в куче. Поэтому пока не выгрузить длл, очистки стэка не будет.

Это под андроидом такое поведение?
 
Last edited:

Game Server

CSM TV

Page QR Code

QR Code

Donate Campaign

Total amount
$0.00
Goal
$25.00

Latest profile posts

TestUser wrote on TRUP@C's profile.
Master?
TestUser wrote on TRUP@C's profile.
Hello Father

Members online

No members online now.

Discord