UE4学习笔记(一):初识UE4

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u011326794/article/details/47706959

  我使用的UE4版本是4.8.3,首先,新建一个项目,建议跟我一样的初学者先建立一个空项目,以便于自己扩充来熟悉UE4,如图:
新建项目
  这里需要注意一点,就是项目名称不能有中文,不然可能会出现一些奇怪的BUG。
  项目创建完成后会自动打开VS2013,当然前提是你电脑里得有。UE4与VS2013是交互使用的,比如你在UE4中添加一个类,那VS中也会自动添加一个类,并且包含基本代码,同样在VS中编写的代码编译后也会影响UE4,我只能说,32个赞!
  创建好项目后,我们首先来制作一个可以上下浮动的圆锥,作为学习UE4的第一步。
  首先,新建一个Actor类,类名为FloatingActor,就是我们制作的那个可以上下浮动的圆锥。
  创建类
  
  
  这时会显示正在编译c++代码,稍等一会编译完成后,你会发现VS中MyProject1文件夹下多了两个文件,FloatingActor.h与FloatingActor.cpp,是不是很方便?
  下面我们开始写代码,相信选择使用c++而不是蓝图来制作游戏的各位都不怕写代码吧。
  首先在FloatingActor.h中添加一个变量RunningTime,用来保存时间信息。

class MYPROJECT1_API AFloatingActor : public AActor
{
    GENERATED_BODY()

public: 
    // Sets default values for this actor's properties
    AFloatingActor();

    // Called when the game starts or when spawned
    virtual void BeginPlay() override;

    // Called every frame
    virtual void Tick( float DeltaSeconds ) override;

    float RunningTime;

};

  然后在FloatingActor.cpp中扩展一下Tick( float DeltaTime )函数:

void AFloatingActor::Tick( float DeltaTime )
{
    Super::Tick( DeltaTime );

    FVector NewLocation = GetActorLocation();
    float DeltaHeight = (FMath::Sin(RunningTime + DeltaTime) - FMath::Sin(RunningTime));
    //通过正弦函数来控制圆锥上下浮动
    NewLocation.Z += DeltaHeight * 20.0f;       //Scale our height by a factor of 20
    RunningTime += DeltaTime;
    SetActorLocation(NewLocation);
}

  然后Ctrl+Shift+B编译一下,在UE4中也要编译一下,全都编译完成后,把我们的FloatingActor类拖到上方的关卡编辑器中,这样世界大纲中就会出现一个FloatingActor1对象,如图:


  选中它后我们添加一个圆锥,然后更改一下初始位置,单击运行,我们便可以看到一个圆锥在桌子上放上下浮动了。

  还有一点需要注意,用UE4制作的游戏是很大的,这么点东西,项目就已经1.5G了,还望大家做好心理准备。
  

展开阅读全文

没有更多推荐了,返回首页