HLFX.Ru Forum
Показать все 82 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Half-Life SDK (https://hlfx.ru/forum/forumdisplay.php?forumid=8)
-- Custom version of ZHLT by vluzacn (https://hlfx.ru/forum/showthread.php?threadid=3141)


Отправлено FiEctro 14-12-2011 в 17:22:

Half-Life Custom version of ZHLT by vluzacn

Хочу сказать что тема будет вестись на английском языке. Т.к. перевод требует некоторое время и ресурсы. Но если кто то возьмется перевести я буду только за.

Старые версии постить не буду, начну с 25 той.

Update:

version 25


Improve hlrad's ability to handle the case of too many dynamic light styles on a face.
When a face gets more than 3 different dynamic light styles, some of the light styles must be discarded. Now hlrad ensures that the brightest 3 dynamic light styles will be kept.
The 'too many styles' error will no longer occur. But any style darker than the 3 brightest styles will be discarded without any warnings, because I haven't created a warning for that.



Add 'func_detail' entity, which is similar in function to the func_detail in Source, though I probably implement it in a rather different way.

What is func_detail:
(Brushes that are not in any entities are called world brushes, and brushes in func_details are called detail brushes.)
Detail brushes are almost same to world brushes. They cannot be distinguished from world brushes once the compile has finished. For example, when viewing the bsp with 'BSP Viewer', func_details don't disappear after unchecking 'render entities'.
What makes detail brushes different from world brushes is that they don't participate in visibility calculation, which means they won't slow down hlvis.
A better description can be found here: http://developer.valvesoftware.com/wiki/Func_detail

Differences between detail brushes, world brushes and func_walls:
Compared to world brushes, detail brushes don't block vis or slow down vis process, and don't chop faces from world brushes, and don't cause the 'Ambiguous leafnode content' warning.
Note that detail brushes cannot be used to seal a map, and must not be made of water or sky (but SKIP and CLIP can be used in func_details).
Compared to func_wall, func_detail don't consume engine's model precache slots (which is 512 max), and will give player mdl (and any other mdl) correct brightness when he steps over it.
In addition, there is an option that allows a func_detail to chop faces of world brushes in order to reduce face area and produce better lighting.
But unlike func_wall, the faces in func_detail will be cut if it happens to span across a splitting plane of the BSP structure generated from world brushes and func_details, thus increasing bsp file size and wpoly.

Usage:
Convert any brushes, that are not parts of the basic structure of the map, to func_detail. They cannot be water brushes or sky brushes.
You can leave 'Detail level' to 1. For tiny objects, you might set it to 2, so that they won't chop the faces of other func_details.
For large shapes such as terrain and walls, you can set 'Lower its level to cut others' to no less than its detail level, so that they can chop adjacent world brushes like world brushes.
Before compiling the map, hide all entities and func_details, make sure there are no leaks and the structure is good enough for vis calculation.

Further explanations:
To add the feature of detail brushes, I introduced a concept called 'detail level', which is a number assigned to each brush, which can be 0, 1, 2, 3,... .
--I will refer to all brushes that have the same detail level as a 'layer':
All world brushes are in the layer of detail level 0.
All brushes in a func_detail go to the layer corresponding to the func_detail's 'detail level' which is default to 1.
Brushes in brush entities such as func_wall are not in consideration here, because they are in seperated entities.
--In the CSG process:
Every layer will not be affected by any more detailed layers (with only one exception).
Every layer will be chopped by all less detailed layers. That is, if a brush in this layer is embedded into less detailed layers, then the embedded part will be chopped off.
Brushes in the same layer always chop each other.
The exception is, if you want a brush from a more detailed layer to chop the faces of a brush from a less detailed layer, you can either set the former's 'Lower its level to cut others' or the latter's 'Raise its level to get cut' to no less than the difference of their detail level.
--In the BSP process:
First, the surfaces of the layer of detail level 0 split the space into large leafs, which are also portal leafs that are used in vis calculation.
And the layer of detail level 0 is not allowed to have leaks, so detail brushes cannot be used to 'seal' a map.
Then the surfaces the layer of detail level 1 split every leaf into smaller leafs, but they no longer act as portal leafs.
Then does layer of detail level 2, 3,... .
Note that number of visleafs reported in the bsp statistics chart is the number of final leafs generated by all layers.
--In the VIS process:
The visibility data is calculated only according to portal leafs generated by the layer of detail level 0.
So, func_details will not increase the time of VIS process significantly. But they may have some impact on the VIS process, because when the BSP program is processing the layer of detail level 0, it has to also try to optimize the total number of faces, nodes and leafs.
After the calculation, the vis data between portal leafs is then converted to the vis data between final leafs. So adding func_details will increase the total size of vis data.

Other notes:
The detail layers uses an advanced method to decide leafnode content, so detail brushes will not cause "Ambiguous leafnode contents" warnings and related problems.
Usually merely using detail level 0, 1 and 2 is enough. Using too many detail levels may make the BSP process inefficient and increase the bsp file size. For the same reason, 'Detail level of cliphulls' should always be 0 or 1 unless you are trying to solve some cliphull errors by adjusting this value.
Changing the 'Detail level of cliphulls' to 0 will reduce the number of clipnodes, but the cliphull of this func_detail will not use the new leafnode content method.



When CLIP texture is used together with normal textures, which is not allowd before this update, the brush will act like a CLIP brush (block players, don't block bullets, grenades or flashlight) while its faces remain visible.
Note that this brush will also not block light, unless it is tied to an entity with 'opaque' option on.
A typical usage is wire mesh. Create a thin brush with wire mesh texture, and texture the thin side faces with CLIP. Then convert the brush to a func_wall with appropriate properties. You don't need to convert it to func_illusionary.
This feature also makes it possible to let bullet pass through wire meshes which are parts of a moving entity.



Add 'SOLIDHINT' texture which can help create better BSP structure for terrain and other complicated shapes.
The BSP process is to use planes to split the entire space into convex leafs. On each split, every face which spans across the splitting plane must be cut into two fragments by the plane.
In most cases, hlbsp can find a good splitting plane for each split, such that only a few faces are cut.
However, for some complicated shaped surfaces such as terrain and another chimney-like object in the sample map, you may find out that their faces are cut into a lot of fragments, when you view the map in BSPviewer or type gl_wireframe command in game.
This is because hlbsp chooses splitting plane only from the planes of existing faces on the surface, and all faces that are not on the surface of the object are ignored.
In the case of terrain, you can see that the surface only contains the triangle slopes, so it's hard for hlbsp to choose a good splitting plane from these slopes.

SOLIDHINT makes it possibe to manually add extra faces for hlbsp to choose from, in order to help reduce face count and other counts.
For example, for the terrain created by 'Terrain Generator', the vertical planes on the grid lines cut no faces. So we can place SOLIDHINT faces along these planes.

There are two ways of adding SOLIDHINT faces:
1. Like how you add a HINT face, create a brush with SOLIDHINT texture on one face and SKIP texture on other faces. The face with SOLIDHINT texture will become a SOLIDHINT face.
or 2. Replace the the texture of an invisible face of a normal brush to SOLIDHINT. Then a SOLIDHINT face will be copied from that face.

The sample map uses the second way. In the sample map, a SOLIDHINT texture is applied to the shared face of two adjacent solid brushes. So it seems that the SOLIDHINT can "seperate" the two adjacent brushes and stop them from cutting each other.
If you want SOLIDHINT to "seperate" brushes that are part of func_details, make sure the SOLIDHINT is in the same detail level.

Differences between SOLIDHINT and HINT:
1. HINT always cause the space to be cut into more but smaller leafs and increase the size of bsp file, while SOLIDHINT can reduce the number of cuts and decrease the size of bsp file. Placing more SOLIDHINT than needed will usually cause no side effect, except longer compile time in hlbsp stage.
2. There is no need to place HINT inside solid brushes because the purpose of HINT is better vis, while SOLIDHINT faces can be inside solid brushes.



Add 'AllocBlock' amount report for '-chart'.
The main problem one may face while building large maps is the 'AllocBlock:full' error that occurs when the map is being loaded by the game engine.
This new feature can tell the mapper how close to 'AllocBlock:full' error a map is.



Change the condition of MAX_MAP_LEAFS warning.
Now this warning only appears if the number of visleafs (leafs formed from world brushes) exceeds 8192.
The bsp statistics chart can show the number of visleafs.
I'm sure that having more than 8192 leafs will not cause any problems as long as the number of visleafs does not exceed 8192.
I'm not sure whether having more than 8192 visleafs will make the game crush or cause any serious problem.

Increase the limit of different textures from 512 to 4096.
There are no evidence showing that 512 is an engine limit, and there seems to be no errors when I test a map with 2048 textures. So I decide to increase the limit.

Replace the 'wad.cfg' system with a new way of configuring wad list, because the old way is very buggy and hard to understand.
Now every wad config file only contains one set of wad files. The syntax is shown in the 'samplewadconfig.txt'.
If you have more than one configuration, you should put them in different wad config files.
To use a wad config file, you must add parameter '-wadcfgfile ' for hlcsg. The '' can either be a full path, or be the relative path from map folder or tools folder.
For example, the 'samplewadconfig.txt' is in the tools folder, so you can use '-wadcfgfie samplewadconfig.txt'.

Fix the issue of water brushes leaking light.
This only affects world brushes with liquid texture. This doesn't affect func_water.
Now the underwater area will be totally dark unless you add light sources. (As for light sources, turning the water texture into texture light is a good idea)

Fix the bug that the surface of func_water only emits texture light upwards and fails to emit texture light downwards.

Remove the old weird and buggy way how hlbsp deals with HINT texture.
Now HINT will probably work more efficiently than before.

All 'aaatrigger' texture will automatically become invisible.

Change hlrad's default '-gamma' from 0.5 to 0.55 and default '-texreflectgamma' from 2.5 to 2.2
These values are more suitable for Half-Life's default gamma value for lighting and texture and Windows's gamma value.

Change hlrad's default vismatrix method to sparse, because sparse is often a must for large maps.
The parameters for each vismatrix methods have been changed to '-vismatrix sparse', '-vismatrix normal' and '-vismatrix off'. (But you can still use the old '-sparse' or '-nomatrix')

Some other changes:
Fix the broken '-nullfile' parameter.
Opaque entities that are beyond sky brushes will not cast shadows.
Increase the limit of visibility data size.
The light_surface entity may automatically determine whether the texture light uses fast mode according to its brightness and the '-dlight' parameter.
Remove hlrad's '-maxlight' parameter because it is useless and a little uncompatible with dynamic light styles.
'-wadcfgfile', '-hullfile' and '-nullfile' will not require full path.

The tools are compiled by vs2010. So their sizes are much bigger and they may run 10% slower than the older versions.


Оригинал:
http://forums.svencoop.com/showpost...1&postcount=368

Зеркала:
http://design.cs-mapping.com.ua/dow...20vluzacn25.zip

http://design.cs-mapping.com.ua/downloads/samplemap.zip

Чанжлог переведеный с китайского (на английском).

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено KiQ 14-12-2011 в 17:26:

Отлично, надо скочать

__________________
-Brain is dead-


Отправлено XaeroX 14-12-2011 в 18:03:

Цитата:
FiEctro писал:
The tools are compiled by vs2010. So their sizes are much bigger and they may run 10% slower than the older versions.

Так рождаются легенды о том, что новые компиляторы производят менее эффективный и быстрый код, чем старые...

__________________

xaerox on Vivino


Отправлено KiQ 14-12-2011 в 18:18:

По любому при 4 гигах оперативы и четырех ядрах не должно тормозить...

__________________
-Brain is dead-


Отправлено qpAHToMAS 14-12-2011 в 18:43:

Цитата:
KiQ писал:
По любому при 4 гигах оперативы и четырех ядрах не должно тормозить...

Но процессор все-равно будет выполнять больше инструкций .


Отправлено underworlddemon 14-12-2011 в 18:51:

Цитата:
XaeroX писал:
Так рождаются легенды о том, что новые компиляторы производят менее эффективный и быстрый код, чем старые...

а ты думаешь куча программистов пишущих код компиляторов просто так деньги получают ?
разница есть, но там обычно "плохие места" исправляют, "хорошие" улучшить уже сложно


Отправлено thambs 14-12-2011 в 19:30:

ух ты! судя по описанию всё просто зашибись.

__________________
http://www.moddb.com/mods/monorail-quest


Отправлено XaeroX 14-12-2011 в 19:57:

Цитата:
underworlddemon писал:
а ты думаешь куча программистов пишущих код компиляторов просто так деньги получают ?

Ты о чём?

__________________

xaerox on Vivino


Отправлено Chyvachok 14-12-2011 в 20:08:

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


Отправлено underworlddemon 14-12-2011 в 22:55:

Цитата:
XaeroX писал:
Ты о чём?

глюк


Отправлено Government-Man 15-12-2011 в 00:42:

Если мне не изменяет память, товарищ Тренсфер как-то давно при мне лазил с лупой по ассемблерному коду, генерируемому 6-й, 2005-й и 2008-й студиями. Новые студии генерируют гораздо более короткий код, чем старые, и распознают больше случаев для оптимизации. 2010-я студия если я правильно понял, и вовсе научилась генерировать инструкции SSE и SSE2 - по крайней мере какую-то опцию с этим связанную я в настройках проекта видел...

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


Отправлено Scrama 15-12-2011 в 04:44:

Цитата:
Government-Man писал:
Больший же размер бинарников я думаю связан лишь с распуханием рантаймовой либы.
Со сборкой в дебаге/ не отключенном/не полностью отключенном дебагтрекинге в релизе.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran


Отправлено XaeroX 15-12-2011 в 06:24:

Ну давайте рассуждать. Научилась студия юзать SSE/SSE2, юзверь радостно включил его в настройках, скомпилил - а потом прога запускается на процессоре без поддержки SSE2. Что делать? Хороший конпелятор в таких случаях делает две альтернативные ветки кода - с SSE и без SSE. Кода в два раза больше - вот вам и размер.

__________________

xaerox on Vivino


Отправлено Government-Man 15-12-2011 в 12:40:

Цитата:
Scrama писал:
Со сборкой в дебаге/ не отключенном/не полностью отключенном дебагтрекинге в релизе.


Кстате да. Новые студии по умолчанию генерируют дебаговую инфу для релизной сборки.


Отправлено NameLesS 30-04-2012 в 14:27:

Update:

version 26

http://forums.svencoop.com/showpost...7&postcount=562


Отправлено FiEctro 30-04-2012 в 16:43:

NameLesS
Спасибо. Прошу 0дминов обновить первый пост.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено qpAHToMAS 01-05-2012 в 00:23:

Вот это да. Картинку видели? У солнышка появился "радиус", теперь тени от него можно по настоящему растягивать (не как у bounce параметра).


Отправлено Дядя Миша 01-05-2012 в 07:11:

Да пусть он блин вернет всё это дело для переключаемого солнышка.
А то ставишь ему таргетнейм и сразу тени становятся резкими.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено FiEctro 15-06-2012 в 07:57:

Update:

version 27
http://forums.svencoop.com/showthre...3525#post483525

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено antikran 06-09-2012 в 05:16:

В чем проблема подскажите.

Сперва компилировалось нормально без ошибок) но карта "обрезалась" серыми стенками...

Потом написал параметр к визу
-maxdistance 7000

теперь хлвиз слетает, потом карту прокатывает рад... и в итоге получается битая карта...

Как решить данную проблему

__________________
Спасибо тем кто помогает...
И тем кто бред этот читает...
Спасибо Дяде Мише за Xash двиг...
Благодаря ему, чуть больше я постиг...
Ну чайник я, и мало очень знаю С++...
Зато леплю я карты и играю блюз...

Вот так то.


Отправлено KiQ 06-09-2012 в 06:32:

antikran может принимаются только степени двойки

__________________
-Brain is dead-


Отправлено XaeroX 08-09-2012 в 18:06:

У меня такой вопрос.
Есть ли люди, которые активно используют func_detail? И если да, то запускается ли такая карта в софтварном режиме? И если да, то не глючит ли чего?

Не нравится мне эта идея детальных брашей, хоть убейте. Все эти разбиения придуманы для того, чтобы свести overdraw при отрисовке мира к нулю. И алгоритм отрисовки BSP предполагает, что один мировой браш при всём желании не может перекрыть другой мировой браш. А тут безобразие какое-то получается...

__________________

xaerox on Vivino


Отправлено FiEctro 08-09-2012 в 18:10:

XaeroX
Там детайлы фейковые, не такие как в ХЛ2. Они также Vis разбивают как и обычные браши.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 08-09-2012 в 18:19:

FiEctro
Речь не о визе, а именно о разбиении полигонов. То, с чем мы привыкли бороться функ-валлами. Но функ-валлы это энтити, и их движок рисует отдельно от мира. А тут - непонятно.

__________________

xaerox on Vivino


Отправлено Дядя Миша 08-09-2012 в 18:32:

А тем временем...

Версия 28:
http://forums.svencoop.com/showpost...3&postcount=656
Обращаем внимание на последнюю строчку в посте

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено CrazyRussian 08-09-2012 в 18:35:

Цитата:
Дядя Миша писал:
Обращаем внимание на последнюю строчку в посте

>>Last edited by vluzacn; Today at 03:08 AM.
Бедный китаец, до ночи сидит над компиляторами

Ладно, а чем отличается ксашевская редакция от обычной?

__________________
Трагическая новость: Пятеро инженеров Casio умерли от смеха, узнав что Samsung анонсировали часы с заявленным временем работы в 25 часов


Отправлено KiQ 08-09-2012 в 18:42:

CrazyRussian поддержкой func_light

Добавлено 08-09-2012 в 22:42:

к слову...

Цитата:
antikran писал:

Потом написал параметр к визу
-maxdistance 7000

теперь хлвиз слетает, потом карту прокатывает рад... и в итоге получается битая карта...


Цитата:
vluzacn писал:
Fixed hlvis's crash when '-maxdistance' is set.
But I think this parameter is almost useless.

__________________
-Brain is dead-


Отправлено Дядя Миша 08-09-2012 в 18:53:

Цитата:
CrazyRussian писал:
Бедный китаец, до ночи сидит над компиляторами

Общеизвестно, что большинство популярных программ имеют время компила от 12 ночи до 4 утра
Цитата:
CrazyRussian писал:
Ладно, а чем отличается ксашевская редакция от обычной?

генератором делюкс-мапы.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено qpAHToMAS 09-09-2012 в 02:42:

Наконец-то исправил зацепы за углы, даже скриншоте показал .


Отправлено marikcool 09-09-2012 в 07:52:

Цитата:
qpAHToMAS писал:
Наконец-то исправил зацепы за углы, даже скриншоте показал .

теперь дд2 можно откомпилить на нем)


Отправлено XaeroX 09-09-2012 в 08:30:

Где вы вообще видели эти мифические зацепы за углы? Я за свою жизнь сделал десятки карт под халфу, и ни на одной такой проблемы не встречал

__________________

xaerox on Vivino


Отправлено FiEctro 09-09-2012 в 08:33:

XaeroX
Терраген почаще юзай :3.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Skaarj 09-09-2012 в 08:34:

XaeroX
На арканосе у меня были зацепы на неровных дорожках вдоль стен, пришлось скомпилить в зхлт с параметром -cliptype precise


Отправлено Дядя Миша 09-09-2012 в 08:49:

Цитата:
XaeroX писал:
Где вы вообще видели эти мифические зацепы за углы?

ты чего - по boot_camp никогда не бегал?
Там их штук пять таких зацепов.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено XaeroX 09-09-2012 в 11:50:

Цитата:
Skaarj писал:
На арканосе у меня были зацепы на неровных дорожках вдоль стен

Цитата:
Дядя Миша писал:
ты чего - по boot_camp никогда не бегал?

Спасибо, потестирую.
А терраген не только зацепы делает, он вообще виз изломать может.

__________________

xaerox on Vivino


Отправлено fire64 09-09-2012 в 11:53:

Цитата:
XaeroX писал:
А терраген не только зацепы делает, он вообще виз изломать может.

У меня в большинстве случаев даже CSG дохнет при обработке карты созданной в Террагене.

__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей


Отправлено FiEctro 03-12-2012 в 07:51:

Версия 30

Описание

Скачать

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено qpAHToMAS 03-12-2012 в 09:34:

Боже мой, Blur шикарен.


Отправлено XaeroX 03-12-2012 в 10:04:

Да ну, как может быть шикарен блюр на лайтмапах низкого разрешения?
Покажите скрин, что ли.

__________________

xaerox on Vivino


Отправлено FiEctro 03-12-2012 в 10:06:

XaeroX
По ссылке есть скрины.
Скрин

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено qpAHToMAS 03-12-2012 в 10:15:

Ну мы же все знаем, что в CS тот же de_aztec с 950+ wpoly здорово загружает сервер и поднимает Latency у игроков. И что делать? При таком положении дел уменьшать Scale текстур, дабы получить качественные тени? Это недопустимо. Тут то и сглаживание придет к нам на помощь...


Отправлено XaeroX 03-12-2012 в 10:17:

Тут можно было просто чоп повысить и включить режим экстра.
Но мысль я понял. Только мне почему-то кажется, что это в некоторых случаях будет давать артефакты - например, при чередовании небольших светлых и темных пятен, при тенях от небольших объектов и тонких брашей.

Добавлено 03-12-2012 в 17:17:

Цитата:
qpAHToMAS писал:
Тут то и сглаживание придет к нам на помощь...

Ты никогда не задумывался, почему в халфе ступенчатые тени, если можно было просто взять и сгладить, ещё аж в 1998 году?

__________________

xaerox on Vivino


Отправлено qpAHToMAS 03-12-2012 в 10:21:

Цитата:
XaeroX писал:
Ты никогда не задумывался, почему в халфе ступенчатые тени, если можно было просто взять и сгладить, ещё аж в 1998 году?

Ты ведешь к тому, что это самое сглаживание весьма ресурсоемко?


Отправлено FiEctro 03-12-2012 в 10:32:

>> если можно было просто взять и сгладить, ещё аж в 1998 году?

ИМХО Если можно, это не значит необязательно. Сегодня тоже можно прикрутить последние шейдеры и CUDA. Однако никто не торопится.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено marikcool 03-12-2012 в 10:38:

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

__________________
vk.com/skullcapstudios


Отправлено XaeroX 03-12-2012 в 10:52:

Цитата:
qpAHToMAS писал:
Ты ведешь к тому, что это самое сглаживание весьма ресурсоемко?

Наоборот, нет. И его можно было бы реализовать в 1998 году. И даже довольно просто.
Цитата:
FiEctro писал:
Сегодня тоже можно прикрутить последние шейдеры и CUDA.

К чему именно прикрутить?

__________________

xaerox on Vivino


Отправлено FiEctro 03-12-2012 в 13:22:

XaeroX
Сейчас прикручивают ко всему чему не лень. Вот только смысл?

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 03-12-2012 в 14:50:

FiEctro
Ну например? Не уходи от ответа.

__________________

xaerox on Vivino


Отправлено FiEctro 03-12-2012 в 19:15:

XaeroX
Например вот:
http://forum.beyond3d.com/showthread.php?t=57911
Что тебя конкретно интересует? Особо крупных проектов я пока с использованием CUDA невидел, так разномастные демки.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 03-12-2012 в 19:28:

FiEctro
Отлично! Отрисовка 1 кадра за 3 с лишним секунды - это как раз то, что нужно 3д-движкам!

__________________

xaerox on Vivino


Отправлено FiEctro 03-12-2012 в 20:19:

XaeroX
А ты что ожидал? Лет через 5 думаю будет норм.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 03-12-2012 в 20:23:

FiEctro
Я ожидал как минимум 15-20 фпс. В максе дефолтовый рендер и то, наверное, быстрее рендерит, а качество так вообще супер в сравнении с этим.
И вообще, что за глупости - строить софтовый рендер на видеокарте через CUDA? А если у человека радеон?

__________________

xaerox on Vivino


Отправлено FiEctro 04-12-2012 в 12:09:

>> А если у человека радеон?

Если у человека стоял радеон, то матерился сильно он. Я неюзаю радеоны, так что хз. Если делают, значит смысл есть, пускай с таким ущербным фпс. Впрочем у меня где то была демка игры на рейтрейсинге довольно с большими "детализироваными" картами, 15-60фпс и без куды вроде, точно непомню.


__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено qpAHToMAS 04-12-2012 в 12:39:

А вот такое дело:
Не раз поднимался вопрос про убогость освещения моделей в Xash\GS, конкретно я говорю про трейс от центра модели вниз до упора в worldspawn и взятие у этой точки освещения (с лайтмапы?).
Реально ли в тех же ZHLT просчитать освещение не только на брашах, но и в "воздухе" (одна точка на каждые N юнитов например) и уже в моде брать освещение не трейсом вниз, а у ближайшей такой точки к объекту?


Отправлено XaeroX 04-12-2012 в 12:45:

qpAHToMAS
Конечно. Это называется лайтгрид. Но китаетс его прикручивать отказался, насколько я помню. Мол, несолидно это, сложно, и вообще происки загнивающего капиталистического запада.

__________________

xaerox on Vivino


Отправлено FiEctro 04-12-2012 в 12:47:

qpAHToMAS
Лайтгрид китаец обещал запилить, но запилит ли я не знаю.



>> Но китаетс его прикручивать отказался, насколько я помню.

Пруфлинк.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено Дядя Миша 04-12-2012 в 14:15:

Цитата:
XaeroX писал:
И вообще, что за глупости - строить софтовый рендер на видеокарте через CUDA?

а как надо?
Цитата:
XaeroX писал:
Но китаетс его прикручивать отказался, насколько я помню

Ну он нам вообще уклончиво ответил. А если бы он прикрутил, так я бы ух и ого-го! А так нет.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено XaeroX 04-12-2012 в 16:00:

Цитата:
Дядя Миша писал:
а как надо?

На цпу

__________________

xaerox on Vivino


Отправлено qpAHToMAS 04-12-2012 в 23:16:

Цитата:
XaeroX писал:
Но китаетс его прикручивать отказался, насколько я помню. Мол, несолидно это, сложно, и вообще происки загнивающего капиталистического запада.

Странный он.

Urban Sprawl 2 fly-through — круто, походу в будущем комп. игры будут только такими, всё в Real-time, никаких заготовок, запеченных теней и прочего , в прочем, ничего не удивительного, мощности ведь продолжают расти.


Отправлено KiQ 05-12-2012 в 04:45:

а все слышали про kkrieger, раз уж речь зашла?

__________________
-Brain is dead-


Отправлено XaeroX 05-12-2012 в 06:18:

KiQ
Конечно. Нудный он в плане геймплея.

__________________

xaerox on Vivino


Отправлено Дядя Миша 05-12-2012 в 15:19:

Цитата:
KiQ писал:
а все слышали про kkrieger, раз уж речь зашла?

а все видели журнал Артёмия Лебедева?

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено JPEG 09-10-2013 в 16:51:

у Дмитрича в учебнике по кс-маппингу есть примеры полной и тестовой компиляции через зхлт. Вот:

Полная компиляция (наилучшее качество карты)
@echo off
set WADROOT=c:\games\half-life
set mapname=karta.map
hlcsg.exe -estimate "%mapname%"
hlbsp.exe -estimate "%mapname%"
hlvis.exe -estimate -full "%mapname%"
hlrad.exe -estimate -chart -extra -dscale 1 -bounce 4 -smooth 100 "%mapname%"

Тестовая компиляция (наименьшее время компиляции, но качество хуже)
@echo off
set WADROOT=c:\games\half-life
set mapname=karta.map
hlcsg.exe -estimate "%mapname%"
hlbsp.exe -estimate "%mapname%"
hlvis.exe -estimate -fast "%mapname%"
hlrad.exe -estimate -chop 128 "%mapname%"

Какие параметры ставить у компиляторов вхлт текущей версии (Vluzacn's ZHLT v30), чтобы была полная и тестовая компиляция? Я не знаю описания всех параметров света, не знаю какие дефолтные значения у этих параметров, и какие лучше ставить.


Отправлено Skaarj 09-10-2013 в 16:56:

Для полной компиляции важны только 2 параметра.
hlvis.exe -full
hlrad.exe -extra
Остальное - более тонкие натсройки.


Отправлено JPEG 16-10-2013 в 15:49:

Цитата:
Skaarj писал:

Ясно, спасибо. А -estimate нужно прописывать?


Отправлено Дядя Миша 16-10-2013 в 16:17:

Yo Den неа. Это спамить в консоль будет и время компила увеличится. Вывод текста в консоль - крайне медленная операция.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено JPEG 16-10-2013 в 16:56:

Цитата:
Дядя Миша писал:

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


Отправлено Дядя Миша 16-10-2013 в 17:48:

Обновление VHLT

http://forums.svencoop.com/showthre...ZHLT-v31-Update

Наконец-то официальная версия 31
Теперь, как водится, ждите апдейта ксаш-мода.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'


Отправлено Ku2zoff 02-07-2015 в 12:34:

Решил побаловаться перекомпилом освещения на уже готовых картах. Да я просто офигел, как они преображаются после обработки hlrad'ом от китайца cs_oldmansion получил тёплый ламповый свет внутри дома и на улице, вместо холодного что раньше, очень красиво. Переотражения света от стен на de_torabora прямо-таки оживили пещеру. Появилась бредовая идея перекомпилить свет на стандартных халфовских уровнях и поглядеть, что получится. Это задача не слишком сложная, нужны только все rad-файлы для светящихся текстур. Некоторых ведь нету ни в комплекте с хаммером, вообще нигде.


Отправлено XaeroX 02-07-2015 в 14:20:

Цитата:
Ku2zoff писал:
Это задача не слишком сложная, нужны только все rad-файлы для светящихся текстур.

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

Добавлено 02-07-2015 в 20:20:

Цитата:
Ku2zoff писал:
Да я просто офигел, как они преображаются после обработки hlrad'ом от китайца

А ничего особенного. Просто отражение света учитывает цвет материала. В волатиле я так же сделал. Пара строк кода - и освещение резко приятнее.

__________________

xaerox on Vivino


Отправлено Ku2zoff 02-07-2015 в 16:22:

Цитата:
XaeroX писал:
Это невыполнимая задача. В халфе для каждого уровня был написан свой рад-файл

Ну дык вот жеж. Помню, на КСМе кто-то выкладывал римейк кс_ассаулта. Геометрию-то воссоздал, а рад-файл нет. В итоге, внутри склада и ментовского фургончика темно, как у негра в ж внутри.
Цитата:
XaeroX писал:
А способа определить параметры рад-текстуры по скомпилированной карте, похоже, не существует.

Существует. На глаз. Но это очень долго и сложно.


Отправлено XaeroX 02-07-2015 в 16:58:

Цитата:
Ku2zoff писал:
Существует. На глаз. Но это очень долго и сложно.

"На глаз" - это способ только для гомонитариев.

__________________

xaerox on Vivino


Отправлено FiEctro 02-07-2015 в 19:42:

Для карт конкретно халфы - есть файлы рада. Для остальных да, придётся писать вручную свой файл релайтинга. Впрочем обычно их делают неболее 10ти видов на карту. Так что в порте конкретно одной карты это не должно доставить особых проблем. Я из УТ так же свет воровал.

__________________
У котёнка мокрый нос и гладенькая шерсть, у него забавный хвост и быстрых лапок шесть. Две задних, две средних и две передних лапы, такая многоножка получилася у папы.
Он ученый — папа мой — зверушек изучает, гуляет по помойкам, ловит крыс и чаек. Две крысы белокрылые и чайки две унылые покрытые пупырчатою кожей лягушат без пёрышек тоскуют и ускакать спешат.
А ещё есть муравей большой размером с гуся он пугает всех зверей, и я его боюся, когда он ковыляет на лапках на своих.
И в двери ударяет, и начинает стих: Я — муравей, воды налей! Не меньше ведра, напиться мне пора!


Отправлено XaeroX 02-07-2015 в 19:49:

Цитата:
FiEctro писал:
Для карт конкретно халфы - есть файлы рада.

Ошибаешься. Есть только для двух карт из сдк. Для остальных - нет. Универсальные valve.rad и lights.rad не подходят, в чём легко убедиться, попробовав собрать диканпил. А я пробовал, когда ретриблююшен делал.

__________________

xaerox on Vivino


Отправлено GioHAUS0n 03-07-2015 в 00:32:

Лучше проверь исходники карт в Source версии, у них там нету .rad'а


Отправлено Ku2zoff 03-07-2015 в 04:58:

Цитата:
GioHAUS0n писал:
Лучше проверь исходники карт в Source версии, у них там нету .rad'а

Это вообще лучше не пытаться делать. Ещё больше работы. Во-первых, надо такие карты перегнать из vmf в rmf. Во-вторых, сделать замену текстур с materials/texture_blablabla на texture_blablabla. В третьих, подогнать текстурные координаты, т.к. размеры и пропорции текстур разные. В четвёртых, удалить source-специфичные энтити с карт, и заменить где нужно goldsource-специфичными. В пятых, поменять ключи энтить, т.к. fgd тоже разные. Может быть ещё сделать два или три каких-нибудь действия.
А имея все rad-файлы, нужно только батником создать extent-файлы для готовых карт, и так же батником все их перекомпилить. Ну, может быть придётся глобальную гамму покрутить, если на каких-то картах будет слишком темно. Но работы реально раз в 10 меньше.


Отправлено ~ X ~ 03-07-2015 в 09:06:

Цитата:
Ku2zoff писал:
В четвёртых, удалить source-специфичные энтити с карт, и заменить где нужно goldsource-специфичными. В пятых, поменять ключи энтить, т.к. fgd тоже разные.

Я это могу тремя строчками скрипта осуществить, если ты сделаешь всё предыдущее.

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]


Отправлено ~ X ~ 22-07-2015 в 10:41:

Не помню, выкладывал ли я это... В общем, красиво, когда всё грамотно распараллелено:


Добавлено 22-07-2015 в 13:41:

(по-моему, все эти горбы - HLVIS)
PS: система на Оптеронах

__________________
Минутка полезного:
Бесплатный UT-подобный Half-Life mod.
Бесплатный редактор для 32-битных текстур. Без дотнета.
Бесплатный IDE для любых компиляторов и ЯП.
Бесплатная Windows-подобная ОС.
Проверка грамматики русского языка.
Чат по hl[fx]: [email protected]


Отправлено Crystallize 11-09-2015 в 10:02:

Цитата:
XaeroX писал:
А способа определить параметры рад-текстуры по скомпилированной карте, похоже, не существует.

Ну в теории можно сделать по аналогии с поиском векторов движения в mvtools. Накомпилить кучу вариантов лайтмапы с разными значениями каждого лайта. Потом брать один фрагмент лайтмапы для каждого источника, резать на мелкие квадраты, для каждого квадрата считать контрольную сумму, то же самое для эталонной лайтмапы, считать разность контрольных сумм соответствующих квадратиков и если она минимальна по всей лайтмапе, то помечать как её совпадение.
Но начинать с прикручивания OpenCL к раду, и автоматизации сравнения.


Отправлено XaeroX 11-09-2015 в 12:28:

Crystallize
Существует старый, широко известный парадокс. Суть его в том, что человек либо умеет программировать, но не знает, как решить задачу, либо прекрасно знает, как решить задачу, но (вот досада!) не умеет программировать. Сколько прекрасных идей было загублено из-за этого парадокса. Да и страна скален никак встать не может из-за него, родимого.

Теперь по существу: ты предлагаешь алгоритм brute force, при котором на средних размеров карту из халфы потребуется, по самым скромным подсчётам, 10500 перекомпиляций (200 источников света по 255 вариаций на каждый). Если перекомпиляция + сравнение будут занимать всего 5 минут, потребуется 5*10500 минут для всей работы. Для сравнения: возраст Вселенной порядка 1016 минут.


Отправлено Crystallize 11-09-2015 в 13:10:

Цитата:
XaeroX писал:
Для сравнения: возраст Вселенной порядка 1016 минут.

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


Отправлено XaeroX 11-09-2015 в 14:56:

Crystallize
Ты начни код писать, и быстро поймёшь, что всё не так просто, как кажется.


Временная зона GMT. Текущее время 18:04.
Показать все 82 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024