Загальна інформація
опис
VR Weapon — це фундаментальний клас зброї, з якого можна успадкувати будь-який тип зброї. Цей актор використовує компонент VR Grab Component (Див. VR Grab Component) .
компоненти
CImpactParicle - це компонент системи частинок яка породжує частинки, коли куля потрапляє на поверхню.
LSmokeParticle - це компонент системи частинок який породжує дим після кожного пострілу.
LMuzzleParticle - це компонент системи частинок який породжує спалах дула після кожного пострілу.
Weapon_Mesh – це скелетний сітчастий компонент зброї.
Mag_Box – це компонент коробки , який перевіряє перекриття боєприпасів.
Handle_Box – це компонент Box , який перевіряє, чи руки перекриваються для захоплення ручки.
Налаштування
головний
Weapon Icon Mesh – це змінна статичної сітки, яка використовується для відображення в інвентарі рук VR (див. Інвентар рук VR ) (Не забувайте про це, інакше можуть виникнути проблеми) .
Поточний калібр - це ціла змінна, яка представляє калібр патронів зброї. Лише патрони цього калібру підійдуть (див. VR Ammo ) .
Розмір частинок – це змінна з плаваючою речовиною, яка представляє розмір частинок дульного спалаху.
Звук вогню - це звукова змінна, яка відтворюється під час стрільби.
Порожній звук - це звукова змінна, яка відтворюється під час порожнього удару.
Клас снаряда — це клас, який буде створено під час пострілу (див . Снаряд для зброї VR ) .
VR Bullet Decal Class – це клас, який буде створено після удару (див. VR Weapon Decal ) .
Пошкодження - це плаваюча змінна, яка представляє пошкодження зброї.
Має повзунок – це логічна змінна, яка визначає, чи має зброя повзунок.
Slide Mag Curve – це змінна кривої , яка впливає на mag, коли він ковзає (не забувайте про це, інакше можуть виникнути проблеми) .
частинки
Частинка дула — ця частинка з’являється після кожного пострілу з рушниці LMuzzleParticle .
Частинка диму — ця частинка з’являється після кожного пострілу LSmokeParticle .
За замовчуванням, бруд, камінь, пісок тощо – ці частинки з’являються під час удару CImpactParicle.
Ударні частинки вимагають таких типів поверхні. Ці типи поверхні можна додати в UnrealProject\Config\DefaultEngine.ini .
+PhysicalSurfaces=(Type=SurfaceType1,Name="Dirt")
+PhysicalSurfaces=(Type=SurfaceType2,Name="Rock")
+PhysicalSurfaces=(Type=SurfaceType3,Name="Sand")
+PhysicalSurfaces=(Type=SurfaceType4,Name="Water")
+PhysicalSurfaces=(Type=SurfaceType5,Name="Glass")
+PhysicalSurfaces=(Type=SurfaceType6,Name="Cloth")
+PhysicalSurfaces=(Type=SurfaceType7,Name="Metal")
+PhysicalSurfaces=(Type=SurfaceType8,Name="wood")
+PhysicalSurfaces=(Type=SurfaceType9,Name="Grass")
+PhysicalSurfaces=(Type=SurfaceType10,Name="Carpet")
+PhysicalSurfaces=(Type=SurfaceType11,Name="Concreate")
+PhysicalSurfaces=(Type=SurfaceType12,Name="Snow")
+PhysicalSurfaces=(Type=SurfaceType13,Name="Tile")
+PhysicalSurfaces=(Type=SurfaceType14,Name="Asphalt")
+PhysicalSurfaces=(Type=SurfaceType15,Name="Brick")
+PhysicalSurfaces=(Type=SurfaceType16,Name="Cardboard")
+PhysicalSurfaces=(Type=SurfaceType17,Name="Clay")
+PhysicalSurfaces=(Type=SurfaceType18,Name="Plastic")
+PhysicalSurfaces=(Type=SurfaceType19,Name="Electrinics")
+PhysicalSurfaces=(Type=SurfaceType20,Name="Sheetrock")
+PhysicalSurfaces=(Type=SurfaceType21,Name="Plaster")
+PhysicalSurfaces=(Type=SurfaceType22,Name="Leaver")
+PhysicalSurfaces=(Type=SurfaceType23,Name="Blood")
анімації
Для Weapon Mesh потрібен проект анімації, отриманий від класу екземплярів анімації зброї VR (потрібно, інакше проект аварійно завершить роботу) (SeeVR Weapon Animation Instance) .
Події
VR Weapon має 4 події, які можна визначити або використовувати події компонента vr grab.
Do After Fire - Ця подія викликається після кожного успішного стрільби. Вихід: bool IsTraceHit, FHitResult OutTraceHit .
Do After EmptyS hoot - ця подія викликається після кожного порожнього стрільби.
Do On Release Mag - ця подія викликається після кожного релізу mag.
Зробіть на журналі - Ця подія викликається після кожного журналу.
Довідник API Blueprint
Публічні функції члена
Get In Hand Status
returns bInHand
Output
bool bInHand
Get Just Droped
returns bInHand
Output
bool bJustDroped
Get Weapon Mesh
returns Weapon_Mesh
Output
USkeletalMeshComponent* Weapon_Mesh
Get Mag Box
returns Mag_Box
Output
UBoxComponent* Mag_Box
Get Mag Attach To Mesh
returns MagAttachTo_Mesh
Output
UStaticMeshComponent* MagAttachTo_Mesh
Get Trigger Push Int
returns fTriggerPushInt
Output
float fTriggerPushInt
Get Hammer X
returns fHammer_X
Output
float fHammer_X
Get Just Shot
returns bJustShoot
Output
bool bJustShoot
Get Safer Pressed
returns bSaferPressed
Output
bool bSaferPressed
Get Caliber
returns CurrentCaliber
Output
uint8 CurrentCaliber
Get Static Weapon Mesh
returns Weapon_Icon_Mesh
Output
UStaticMesh* Weapon_Icon_Mesh
Get Current Mag
returns CurrentMag
Output
AActor* CurrentMag
Get Grab Animation
returns GrabAnimation
Output
UAnimSequence* GrabAnimation
Get Trigger Pressed Animation
returns TriggerPressedAnimation
Output
UAnimSequence* TriggerPressedAnimation
Get A Pressed Animation
returns APressedAnimation
Output
UAnimSequence* APressedAnimation
Get Second Grab Animation
returns SecondHandGrabAnimation
Output
UAnimSequence* SecondHandGrabAnimation
Is This HandSecond Attached
Input
AVR_Hands* Hand
Output
return bool
Публічні атрибути
class UVR_WeaponAnimationInstance * WeaponAnimation
Захищені атрибути
class UStaticMesh * Weapon_Icon_Mesh
uint8 CurrentCaliber
bool bAmmoApplyed
bool bJustShoot
bool bShootAnim
bool bSaferPressed
bool bAmmoLeft
bool bAllowAmmoIn
float fParticleSize
bool bInHand
class USoundBase * FireSound
class USoundBase * EmptySound
class UStaticMeshComponent * MagAttachTo_Mesh
AActor * CurrentMag
TSubclassOf< class AVR_WeaponProjectile > ProjectileClass
TSubclassOf< class AVR_BulletDecal > VR_BulletDecalClass
UParticleSystem * MuzzleParticle
UParticleSystem * SmokeParticle
float Damage
bool bHasSlider
UParticleSystem * ImpactParticle
UParticleSystemComponent * LMuzzleParticle
Particle Components to spawn.
UParticleSystemComponent * LSmokeParticle
UParticleSystemComponent * CImpactParticle
FTransform PrevTransform
bool bLatsBulletShot
UParticleSystem * DefaultParticle
Impact particles.
UParticleSystem * DirtParticle
UParticleSystem * RockParticle
UParticleSystem * SandParticle
UParticleSystem * WaterParticle
UParticleSystem * GlassParticle
UParticleSystem * ClothParticle
UParticleSystem * MetalParticle
UParticleSystem * WoodParticle
UParticleSystem * GrassParticle
UParticleSystem * CarpetParticle
UParticleSystem * ConcreteParticle
UParticleSystem * SnowParticle
UParticleSystem * TileParticle
UParticleSystem * AsphaltParticle
UParticleSystem * BrickParticle
UParticleSystem * CardboardParticle
UParticleSystem * ClayParticle
UParticleSystem * PlasticParticle
UParticleSystem * ElectronicsParticle
UParticleSystem * SheetRockParticle
UParticleSystem * PlasterParticle
UParticleSystem * LeavesParticle
UParticleSystem * BloodParticle
bool bJustDroped
float fTriggerPushInt
float fHammer_X
class AVR_Hands * P_MotionControllerMain
class UPhysicsConstraintComponent * P_PhysicsConstraintMain
class USkeletalMeshComponent * P_HandMeshMain
class AVR_Hands * P_MotionControllerSecond
class UPhysicsConstraintComponent * P_PhysicsConstraintSecond
class USkeletalMeshComponent * P_HandMeshSecond