Перейти к контенту

Работа с текстурами


Рекомендуемые сообщения

sashabelii, дело у тебя вообще не в бампе, он используется только на динамике, альфа канал неправильный у текстуры, залей его полностью белым Изменено пользователем saruman_ten

Можно создать еще один ui_icon_equipment_.dds под таким названием ui_icon_equipment_weapons.dds и добавлять на него только оружие ? как ?)))))

 

Можно, создавай! Как? - Руками.

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

ColR_iT

Изменено пользователем ColR_iT

Создал ui_icon_equipment_weapons.dds теперь где мне здесь поменять вместо этого

ui_icon_equipment.dds чтобы оружие можно было добавлять ))))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
[wpn_akm]:identity_immunities
GroupControlSection		= spawn_group
discovery_dependency	= 
$spawn              	= "weapons\ak-74"	; name and section in level editor
$npc					= on				
$prefetch 				= 8
scheduled				= off               ;[] option for ALife Simulator
cform               	= skeleton
class               	= WP_AK74			; class of the weapon that corresponding to CPP class
min_radius          	= 0				; [] for AI
max_radius          	= 100				; [] for AI
description				= "Автомат Калашникова Модернизированный отличается от АК: увеличена прицельная дальность, меньшей массой, приподнятым вверх прикладом, что приблизило точку упора к линии стрельбы, более высокими показателями точности и кучности, а также установкой ГП-25 «Костёр». Исключительно высокую репутацию автомату Калашникова обеспечила его надежность и возможность стрельбы даже при засорении песком и грязью. Немаловажное значение имеет простота разборки автомата и ухода за ним. В Зоне АКМ не менее популярное оружие, несмотря на недостаточную кучность стрельбы, но благодаря простоте оружия, не высокой цене, и высокому поражающему эффекту тяжелой пули 7,62мм."

ef_main_weapon_type		= 2
ef_weapon_type			= 6

;-----------------------------------------------------------------------------------
holder_range_modifier	= 1.0		       ; во сколько раз увеличивается eye_range 
holder_fov_modifier		= 0.7              ; во сколько раз увеличивается eye_fov
;-----------------------------------------------------------------------------------

cost					= 3500
weapon_class			= assault_rifle

ammo_limit				= 210
ammo_elapsed			= 30

ammo_mag_size			= 30	
fire_modes				= 1, -1

ammo_class				= ammo_7.62x39_fmj, ammo_7.62x39_ap
grenade_class			= ammo_vog-25, ammo_vog-25p
launch_speed			= 0

hand_dependence			= 1
single_handed			= 0

slot 					= 2
animation_slot			= 2

inv_name	        	= "АКМ"
inv_name_short			= "АКМ"
inv_weight			= 3.93

inv_grid_width			= 5	
inv_grid_height			= 2	
inv_grid_x				= 5 
inv_grid_y				= 5

kill_msg_x			= 0
kill_msg_y			= 28
kill_msg_width		= 84
kill_msg_height		= 28

;-----------------------------------------------------------------------------------
;params of weapon recoil
fire_dispersion_base			= 0.03		;угол (в градусах) базовой дисперсии оружия (оружия зажатого в тисках)
control_inertion_factor			= 1.25f

;отдача
cam_relax_speed         		= 0		;скорость возврата в исходное положение
cam_dispersion          		= 0.17		;увеличения угла (в градусах) с каждым выстрелом
cam_dispersion_inc			= 0.35		;увеличениe cam_dispersion с каждым выстрелом
cam_dispertion_frac			= 0.95		;ствол будет подыматься на cam_dispersion*cam_dispertion_frac +- cam_dispersion*(1-cam_dispertion_frac)
cam_max_angle				= 11.0	    	;максимальный угол отдачи
cam_max_angle_horz			= 20.0		;(degree) maximum shot horizontal degree 
cam_step_angle_horz			= 1.1;1		;(degree) size of step camera moved in horizontal position while shooting

fire_dispersion_condition_factor 	= 5	    	;увеличение дисперсии в процентах при максимальном износе 
misfire_probability 		= 0.003	;вероятность осечки при максимальном износе 
misfire_condition_k			= 0.05
condition_shot_dec 			= 0.0001	;увеличение износа при каждом выстреле
;-----------------------------------------------------------------------------------

fire_point             		=  0,0.216,0.58			; position (3rd person view) for particles of fire 
fire_point2            		=  0,0.1650,0.730			; position (3rd person view) for particles of fire (when shooting with secondary fire)

flame_particles				= weapons\generic_weapon05
smoke_particles				= weapons\generic_shoot_00
grenade_flame_particles		= weapons\generic_shoot_00

shell_point		 			= 0,0.216,0.154
shell_particles	 			= weapons\arsenal_shells1  ;shell_particles	= weapons\generic_shells

PDM_disp_base 				= 1.0
PDM_disp_vel_factor 		= 1.3
PDM_disp_accel_factor 		= 1.3
PDM_crouch	 				= 1.0
PDM_crouch_no_acc 			= 1.0

; ttc
hit_power        	= 0.55
hit_impulse		 	= 17
hit_type 			= fire_wound
fire_distance            	= 700		; maximum fire distance that bullet can fly
bullet_speed				= 715		; starting bullet speed
rpm                      	= 600		; max round per minute

use_aim_bullet				= true		;Поддерживается ли первая суппер пуля
time_to_aim					= 1.0	

;params when silencer is attached 
;similar to corresponding params without prefix silencer_

silencer_hit_power       	= 0.45
silencer_hit_impulse	 	= 12
silencer_fire_distance   	= 250
silencer_bullet_speed	 	= 600

hud                      	= wpn_akm_hud

position         	        = -0.026,-0.172,0			; position (offset) and orientation of the weapon in the hands of character
orientation      	        = 0,0,0						; (3rd person view)

;--STRAP PARAMETERS-----------------------------------------------------------------
strap_position         		= -0.16,-0.40,0.15			; position (offset) and orientation of the weapon when it is strapped
strap_orientation      		= -10,-5,10					; (3rd person view in degrees)
strap_bone0					= bip01_spine2
strap_bone1					= bip01_spine1

visual         		        = weapons_arma\akm\wpn_akm.ogf

light_color					= 0.6,0.5,0.3				; params for light during the fire
light_range					= 5							; radius
light_var_color				= 0.05						
light_var_range				= 0.5
light_time 					= 0.2						

ph_mass						= 3

;addons
scope_status				= 2		; 
silencer_status				= 2		; 
grenade_launcher_status		= 2		; 

zoom_enabled				= true
scope_zoom_factor	    	= 50	

scope_name 					= wpn_addon_scope
scope_x 					= 44
scope_y 					= 4
silencer_name  				= wpn_addon_silencer
silencer_x 					= 213
silencer_y 					= 13	
grenade_launcher_name 		= wpn_addon_grenade_launcher
grenade_launcher_x 			= 116
grenade_launcher_y 			= 23

;sounds (name of the sound, volume (0.0 - 1.0), delay (sec))
------------------------------------------------------------------------
snd_draw					= weapons\ak_arma\draw
snd_holster					= weapons\ak_arma\holster
snd_shoot					= weapons\ak_arma\shot0
snd_shoot1					= weapons\ak_arma\shot1
snd_shoot2					= weapons\ak_arma\shot2
snd_shoot3					= weapons\ak_arma\shot3
snd_reload					= weapons\ak_arma\reload    ;, 0.8, 0.8
snd_empty					= weapons\ak_arma\empty
snd_silncer_shot			= weapons\ak_arma\shot_sil
------------------------------------------------------------------------
snd_shoot_grenade			= weapons\gen_grenshoot
snd_reload_grenade			= weapons\gen_grenload, 1.0, 0.8
snd_switch					= weapons\groza_switch, 1.0, 0.5
------------------------------------------------------------------------
silencer_light_color		= 0.6,0.5,0.3
silencer_light_range		= 0.01
silencer_light_var_color	= 0.05
silencer_light_var_range	= 0.5
silencer_light_time 		= 0.2
silencer_smoke_particles 	= weapons\generic_shoot_00
;------------------------------------------------------------------------
;-- HUD DESCRIPTION
;------------------------------------------------------------------------

[wpn_akm_hud]
allow_inertion				= true

shell_point					=  0.0, 0.10, -0.13
shell_dir			     	= 0.0, 1.0, 0.0

fire_point               	= 0.0,0.09,0.07
fire_point2              	= 0.019,0.07,-0.47 ;  0.019,0.07,0.07
fire_bone               	= wpn_body

orientation             	= 1, 2, 0		
position                	= 0.09, -0.04, -0.01
visual                  	= weapons_arma\akm\wpn_akm_hud.ogf
grenade_bone            	= wpn_grenade

; animation names

anim_idle					= idle
anim_idle_aim				= idle_aim
anim_reload					= reload
anim_draw					= draw
anim_holster				= holster
anim_shoot					= shoot

; attached grenade launcher [NORMAL fire mode]
anim_idle_gl				= idle_w_gl
anim_idle_gl_aim			= idle_w_gl_aim
anim_reload_gl				= reload_w_gl
anim_draw_gl				= draw_w_gl
anim_holster_gl				= holster_w_gl
anim_shoot_gl				= shoot_w_gl
anim_idle_sprint			= idle_sprint


anim_idle_g					=  idle_w_gl
anim_idle_g_aim				= idle_w_gl_aim
anim_reload_g				= reload_grenade
anim_shoot_g				= shoot_w_gl
anim_switch_grenade_on		= grenade_on
anim_switch_grenade_off		= grenade_off
anim_draw_g					= draw_w_gl
anim_holster_g				= holster_w_gl

; attached grenade launcher [GRENADE fire mode]
---anim_idle_g					= idle_grenade
---anim_idle_g_aim				= idle_grenade  ;idle_g_aim ;?
---anim_reload_g				= reload_grenade
---anim_shoot_g				= idle_grenade  ;shoot_grenade   ;?
---anim_switch_grenade_on		= grenade_on
---anim_switch_grenade_off		= grenade_off
---anim_draw_g					= draw_grenade
---anim_holster_g				= holster_grenade
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

zoom_offset			= -0.0898,0.0450,-0.115000
zoom_rotate_x		= 0.0540
zoom_rotate_y		= 0.01840

zoom_hide_crosshair	= true

grenade_normal_zoom_offset			= -0.0898,0.0450,-0.115000
grenade_normal_zoom_rotate_x		= 0.0540
grenade_normal_zoom_rotate_y		= 0.01840


grenade_zoom_offset			= -0.066500,-0.28310,0.00    ; -0.039600,-0.13100,0.000000
grenade_zoom_rotate_x		=  -0.38700
grenade_zoom_rotate_y		= 0.01700   ; -0.033800

====================================================================

Изменено пользователем S.T.A.L.K.E.R-DOLG

saruman_ten

Как мне его в движок прописать ?

Изменено пользователем ColR_iT

S.T.A.L.K.E.R-DOLG Попросить у ПЫС исходники движка и уж потом "шаманить" с ним. :)

Я вот одного не понимаю, зачем это Вам ? Вам что вера не позволяет расширить существующий и сгруппировать в одной стороне всё оружие, а своё в другой ?

Valerich

Просто оружия будет очень много ))))))

Изменено пользователем ColR_iT
S.T.A.L.K.E.R-DOLG Да по барабану, я думаю что в размер 4096х4096 Вы точно всё вместите. НО ... - потянет ли у Вас это видеокарта, а в последствии (если вдруг это у Вас модификация) как такое потянет у других пользователей. 2048х2048 то не у всех тянут видюшки
saruman_ten, у DXT1 отсутствует альфа-канал, а так ничем кроме этого не отличается. Изменено пользователем Artem_K.

Artem_K., не там 1битная альфа, тоесть если альфа вообще не используется, то лучше DXT1 использовать?

 

 

Если где-то не прав, то сильно не бейте.

Экспериментируя с текстурами, обнаружил интересную особенность bump-тектсур, а именно bump#.

Если обычную "синюю" карту нормалей не переделывать в "зеленую", а добавить в ее альфа-канал карту высот и сохранить как texture-name_bump#, то из RGB-каналов будут использованы карты нормалей, а из альфа-канала карта высот.

Снято на шейдерах патча 1.004. bump-текстура 1x1 писксель (R - 0x272727 (чтобы не блестела), G - 0xffffff, B - 0x808080, A - 0x808080 ) , bump#-текстура сделана по описанному выше способу. Diffuse-ткустура - использовал сплошную заливку 50% серого, для наглядности самого бампа.

ss_balaam_02-17-12_22-48-27_(l01_escape).jpeg

Вот так выглядят каналы bump#-текстуры.

channels.jpeg

 

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

 

На шейдерах Sky4CE это смотрится интереснее, с учетом parallax occlusion.

 

Надеюсь от этого будет хоть какая-то польза, а не просто пустой набор рассуждений.

DLinksMan, в файле ui_main_menu.xml ищешь все что надо(необходимо элементарное знание английского)

Столкнулся с такой проблемой:

Экспортирую модели NPC из ТЧ в ЗП. С самой моделью всё хорошо и с текстурой тоже, но вот Bump. У текстур из ТЧ есть бампы, но как их привязать к текстурам ЗП? Во-первых, в ЗП нет "textures.ltx", во-вторых, нужен .tnm файл, который делается в SDK. Нашёл тутор вот ссылка, но и тут не всё хорошо. Там автор пишет, что некоторые параметры нужно узнавать в "textures.ltx". Сохранил как есть, указав только Bump\Texture. В итоге получил .tnm файл, но если оригинальные .tnm из ЗП открыть блокнотом там что-то вроде этого - "act\act_stalker_hero_bump",а в моём такого нет. В итоге в игре это выглядит вот так:

090400988187t.jpg

 

Также нашёл вроде аналог "textures.ltx", "evaluation.ltx". Туда прописал новые текстуры.

Я на бампа не вижу, или он просто слепой?

Вообщем, как правильно экспортировать бамп текстуры из ТЧ в ЗП?

 

Умный_колобок, в ЗП нужно использовать thm файл. Есть thm-ки для ТЧ, их можно найти в СДК ТЧ, если его у тебя нету или лень устанавливать, вот туточки есть - http://stalker-2.com.ua/downloads.php?cat_id=2

Но они все равно несовместимы с ЗП, для этого их специальной утилитой thmParser нужно перегнать в формат ЗП. Утилиту можно найти на сталкерине или там-же у меня на сайте - http://stalker-2.com.ua/downloads.php?cat_id=1.

После конвертации вомещаешь текстуры бампа и тхм-ки куда нужно и все работает.

 

З.Ы. Для работы программы, если я не ошибаюсь нужна ява (java) на компе.

Привет, кто может подсказать как привязать бапм к текстуре..я лиш понял что пути хранятся в файле *.thm. если не так, поправьте, вообшем помогите разобраться, спасибо!

Всем доброго времени суток, уважаемые форумчане! Выдалась свободная минутка поэтому решил чиркануть тутор.

Тема туториала: Создание *.dds иконок для игр серии сталкер на основе моделей.
Уровень сложности: средний

Отличие предложенного мной способа состоит пожалуй лишь в том, что качество иконок сохраняется на высоком уровне и иконки не имеют белой "обводки" непосредственно в самой игре.

Итак приступим: нам понадобятся: Adobe Photoshop cs5, Paint.NET, *.dds плагин от NVIDIA, Stalker Icon Editor, OGF Viewer а также модель предмета и его текстуры.
Начинаем с того, что открываем нашу модель с помощью OGF Viewer (имеется ввиду модель предмета который позже будет использоваться в игре). Я использовал модель АК из Метро 2033.
Идём File>Save и сохраняем как *.obj файл. Преимущество этого формата состоит в том, что он читается программой Adobe Photoshop cs5.
Открываем *.obj файл с помощью фотошопа и наблюдаем примерно следуещее:
882485.jpg
Если модель закрашена белым цветом, а не серым как на скрине, следует удалить файл ogfmodel.mtl создавшийся вместе с *.obj.
Дважды кликаем на иконку слоя, открывается окно в котором можно задать текстуру нашей модели. Указываем путь к нашей текстуре (следует учесть, что *.obj формат поддерживает не более двух текстур, так-что не все модели можно просмотреть таким способом). Выбираем инструмент 882492.jpg и на панели сверху (там где обычнопроисходит настройка кистей и т.п) выбираем такое положение, чтобы наш предмет был обращен так как он будет отображаться в игре.
Далее растрируем 3D: двойной клик на слое>Растрировать 3D. Нажимаем Ctrl+" (включаем сетку). Следует настроить её так, чтобы шаг сетки был равен 50 пикселей.
882500.jpg
Нажимаем Ctrl+T и уменьшаем до нужного размера.
882503.jpg
Основная часть готова... Создаем новый слой под иконкой и заливаем его чёрным цветом. Нажимаем Ctrl+клик на иконке слоя с иконкой, Ctrl+E Ctrl+J.
882504.jpg
Удаляем нижний слой (для тех кто в танке, мы только-что удалили белую каёмку). Заливаем все клетки кроме тех в которых наша иконка чёрным.
882508.jpg
Сохраняем как *.png файл. Открываем его с помощью Paint.NET. Сохраняем как *.dds файл с настройками как на скрине.
882515.jpg
Открываем иконки сталкер и получившуюся текстуру с помощью Stalker Icon Editor. Копируем клетки с нашей иконкой и вставляем в произвольное место в ui_icon...
882517.jpg

Сохраняем, готово!
Изменено пользователем Абакант

Абакант

Не плохо, не знал что Photoshop модели открывает...

А почему решил делать тутореал на моей текстуре иконок?

 

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...