Engine Focus
Unreal Engine
Gameplay prototypes, interaction systems, and camera/game-feel experiments built in C++ and Blueprint-driven workflows.
Dolly zoom / Vertigo effect
A dolly zoom is an in-camera effect that appears to undermine normal visual perception. The effect is achieved by zooming a zoom lens to adjust the angle of view while the camera dollies toward or away from the subject in such a way as to keep the subject the same size in the frame throughout.
ColorShooter
This is a small First-person C++ project. The goal of this game is that every time we shoot an object it shrinks and disappears under a certain threshold hits, when we hit the cubes we get feedback by changing its color. You can check the main functionality written in C++ below
Source Panel AFPSProjectile::OnHit
void AFPSProjectile::OnHit(
UPrimitiveComponent* HitComp, AActor* OtherActor, UPrimitiveComponent* OtherComp, FVector NormalImpulse, const FHitResult& Hit){
// Only add impulse and destroy projectile if we hit a physics
if ((OtherActor != NULL) && (OtherActor != this) && (OtherComp != NULL) && OtherComp->IsSimulatingPhysics()){
OtherComp->AddImpulseAtLocation(GetVelocity() * 100.0f, GetActorLocation());
FVector _Scale = OtherComp->GetComponentScale();
// Make it smaller
_Scale = _Scale * 0.8f;
if (_Scale.GetMin() < 0.5f){
// We cant to destry the whole Actor not just the component
OtherActor->Destroy();}
else{
OtherComp->SetWorldScale3D(_Scale);}
UMaterialInstanceDynamic* _MatInst = OtherComp->CreateAndSetMaterialInstanceDynamic(0);
if(_MatInst){
// Change the RGB color, stored in a vector
_MatInst->SetVectorParameterValue("Color", FLinearColor::MakeRandomColor());}}}
Interacting systems
Interacting system components that can be attached to any actor, apply physics forces to components that are detected through tracing.
