unreal 编译服务器_vs编译unreal - CSDN
  • UE4编译专用服务器

    2016-08-08 21:10:24
    最近想要编译出UE4的专用服务器编译成单独的exe。研究了好几天,网上找了一些方法,但是均试验失败,最后发现要自己加xxx.cs才行!网上一些方法都并没有提到这个!现写下详细过程及分析,以供各位参考! 总结...

    <span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">最近想要编译出UE4的专用服务器,编译成单独的exe。研究了好几天,网上找了一些方法,但是均试验失败,最后发现要自己加xxx.cs才行!网上一些方法都并没有提到这个!现写下详细过程及分析,以供各位参考!</span>


    总结出几个要点:

    1.要下载UE4源代码。在GITHUB上有,可以从Epic上快速找到,如下图:



    下载好以后,按顺序点击

    1.setup.bat 点击以后会下载大概4G的东西,根据网速不同要几个小时吧

    2.GenerateProjectFiles.bat 点击以后会生成出UE4.sln


    下载源码花了我一天时间!我把源码打包上传到网盘了,想要速度比较快的,可以到我网盘下载

    http://download.csdn.net/detail/sukeychen/9593597

    收5积分...实在没积分的留言我可以发你们


    2.打开UE4.sln,选择解决方案配置的Development Editor,编译出UE4编辑器



    3.用这个编辑器新建的工程,就可以用来编译Server了。但是如果你要编译的是旧工程的Server也不用担心,可以改版本,效果是一样的。

    右键点击工程 选择Switch Unreal Engine version...就可以选择版本了:



    4.在工程文件目录下的Source文件夹下,新建VRGameServer.Target.cs文件

    文件内容类似:

    // Copyright 1998-2014 Epic Games, Inc. All Rights Reserved.
     
    using UnrealBuildTool;
    using System.Collections.Generic;
     
    public class GameServerTarget : TargetRules
    {
        public GameServerTarget(TargetInfo Target)
        {
            Type = TargetType.Server;
        }
     
        //
        // TargetRules interface.
        //
        public override void SetupBinaries(
            TargetInfo Target,
            ref List<UEBuildBinaryConfiguration> OutBuildBinaryConfigurations,
            ref List<string> OutExtraModuleNames
            )
        {
            base.SetupBinaries(Target, ref OutBuildBinaryConfigurations, ref OutExtraModuleNames);
            OutExtraModuleNames.Add("Game");
        }
     
        public override bool GetSupportedPlatforms(ref List<UnrealTargetPlatform> OutPlatforms)
        {
            // It is valid for only server platforms
            return UnrealBuildTool.UnrealBuildTool.GetAllServerPlatforms(ref OutPlatforms, false);
        }
     
        public override List<UnrealTargetPlatform> GUBP_GetPlatforms_MonolithicOnly(UnrealTargetPlatform HostPlatform)
        {
            if (HostPlatform == UnrealTargetPlatform.Mac)
            {
                return new List<UnrealTargetPlatform>();
            }
            return new List<UnrealTargetPlatform> { HostPlatform, UnrealTargetPlatform.Win32, UnrealTargetPlatform.Linux };
        }
     
        public override List<UnrealTargetConfiguration> GUBP_GetConfigs_MonolithicOnly(UnrealTargetPlatform HostPlatform, UnrealTargetPlatform Platform)
        {
            return new List<UnrealTargetConfiguration> { UnrealTargetConfiguration.Development };
        }
    }
    
    GameServerTarget
    改为

    你项目名ServerTarget

    比如我的就是改成

    VRGameServerTarget

     OutExtraModuleNames.Add("Game");
    改为

     OutExtraModuleNames.Add("项目名");
    比如我的就是改成

     OutExtraModuleNames.Add("VRGame");


    然后在工程文件上按右键选择Generate Visual Studio project files 重新生成VS文件。


    5.打开工程文件的sln(我的是VRGame.sln)

    选择Development Server选项进行编译


    编译的时间会有点久,耐心等待=.=

    (说明:如果不是用编译版的,直接用的下载好的版本,加入xxxserver.cs以后,也是会出现Development Server选项,但是会报错,打不开头文件,因为下载版的源代码是只能看,不能编译和重新构建的)


    6.在工程目录下的Binaries下的Win64里就会出现XXXServer.exe(XXX为你自己的工程名)

    我的是:

    D:\VRGame\Binaries\Win64



    7.设置好默认地图,打包工程,据说不勾选Use pak file 和 full rebuild编译会快些(但是我没感觉出来有变快=.=)




    8.把XXXServer.exe复制到打包好的文件下的Binaries下的Win64里



    9.右键把XXXServer.exe设置为快捷方式,在快捷方式里按右键->属性-> 在路径后面加 -log

    就能显示出控制台了。




    10.在客户端输入 ~open 127.0.0.1 就可以连接上服务器了

    (127.0.0.1为本机,如果是在其他机子则填对应IP)



    参考网址:

    http://www.cnblogs.com/moelocus/p/5599509.html

    https://wiki.unrealengine.com/Standalone_Dedicated_Server

    https://www.youtube.com/watch?v=zSA8zUo8oCg


    展开全文
  • UE4 编译独立服务器

    2017-06-06 09:50:34
    今天下班,明天更新。。 参考:https://wiki.unrealengine.com/Dedicated_Server_Guide_(Windows_%26_Linux)

    首先需要下一个源码版的UE4,并且编译好Development Editor 版本,然后新建一个ThirdPerson C++项目测试

    进去后新建一个entry关卡,并且把ThirdPersonExampleMap移动到内容的Maps下,如图


    然后在entry关卡的关卡蓝图里写上


    这里open的是自己的IP地址

    然后把ThirdPersonExampleMap里的默认角色删除


    最后在项目设置里面设置


    然后全部保存完后关闭编辑器

    接下来找到项目路径Config下的DefaultEngine.ini文件,并添加下面模块

    [OnlineSubsystem]
    DefaultPlatformService=Null

    找到项目路径Source下的XXXEditor.Target.cs文件,复制一个在当前目录下并且重命名XXXServer.Target.cs并且添加代码

    using UnrealBuildTool;
    using System.Collections.Generic;
    
    [SupportedPlatforms(UnrealPlatformClass.Server)]
    public class UTUTServerTarget : TargetRules
    {
    
        public UTUTServerTarget(TargetInfo Target)
    
        {
    
            Type = TargetType.Server;
    
            bUsesSteam = true;
    
        }
    
        //
        // TargetRules interface.
        //
        public override void SetupBinaries
        (
         TargetInfo Target,
         ref List<UEBuildBinaryConfiguration> OutBuildBinaryConfigurations,
         ref List<string> OutExtraModuleNames
         )
        {
            OutExtraModuleNames.Add("UTUT");
        }
    
    
    }
    
    上面只要把UTUT改成项目名称就可以了,另外不同引擎版本的写法也不一样,这里是4.15版的,其他的可以参考最后的网站
    然后右键蓝色的项目图标,编译下,把刚刚的XXXServer.Target.cs文件添加到VS里

    然后打开VS项目在Build.cs下添加"OnlineSubsystemNull"模块

    编译下项目和Programs



    然后用VS打开项目确保更新


    接着关闭编辑器,从项目的编辑器打开,不要从VS的编辑器打开,这点很重要,不知道为什么从VS打开的编辑器就是打包不了项目

    下面就是打包项目了


    最后VS里再编译项目一个Development Server版本的项目



    在项目的Binaries\Win64会多出几个server应用


    只要复制这个到打包文件下并且创建一个快捷方式


    然后右键快捷方式-属性加上-log(表示服务器可以被看到有日志信息,也可以点上面的Server,在后台运行)


    双击点开快捷方式出现如下图就表示成功了


    这里默认的端口是7777,并且可以看自己的IP

    最后点开客户端应用程序测试下


    看,成功了呢!

    参考:https://wiki.unrealengine.com/Dedicated_Server_Guide_(Windows_%26_Linux)


    展开全文
  • 在使用虚幻4引擎开发网络游戏时免不了会需要自己来编写服务器,关于如何编写网络服务器,不在这篇文章的讨论范围,后面有时间可能会出相关的教程,这篇文章主要是基于某些原因,我们不想自己实现服务器,那么我们...

    在使用虚幻4引擎开发网络游戏时免不了会需要自己来编写服务器,关于如何编写网络服务器,不在这篇文章的讨论范围,后面有时间可能会出相关的教程,这篇文章主要是基于某些原因,我们不想自己实现服务器,那么我们可以采用虚幻自带的独立专用服务器,并且将它打包成exe,log方式启动,效果图如下:

    那么这就是服务器的启动日志喽,你可以把它理解为是一个后台的进程,也就是所谓的游戏服务器。那么虚幻4自带的这套呢,是服务器和客户端公用一套代码,有利有弊吧,比如说优点有,他可以在服务器模拟碰撞而不需要自己实现,那么弊端就是不宜与维护,因为客户端和服务器代码在一起。在游戏运行的时候,客户端其实只是模拟服务器上的行为,也就是说客户端上很多东西只是从服务器上同步过来的,可以看作是一个copy,在UE4引擎下如果需要同步的变量,或者是需要同步的行为,我们都把它设置为replicated即可。对于需要执行的操作,那么就封装成为一个事件在服务器执行即可,当然这也不是这篇文章重点要说的,有点跑题。那么下面讲如何编译游戏专用服务器,其实很简单,就几个步骤。

    1、你需要下载引擎源代码,然后自已编译引擎,至于如何下载编译引擎,请读者自行百度,这里简单提一下吧,如果已经下载编译好的可以跳过此布。首先你需要注册一个GitHub账号,还要有一个epic game账号,然后在epic game账号设置中关联GitHub账号,之后去GitHub会收到关联的验证,点确认后,你就可以在组织中找到它,

    后面就不用我说了吧,选择一个版本直接下载就行。

    下载完成后,你会得到一个类似于这样的压缩文件,我这里是4.21版本。然后解压,解压完成后按图示顺序依次执行批处理,首先点击Setup,等待完成后,点击gen.....生成vs工程,

    完成后你会得到一个UE4.sln文件,

    点击该文件,启动vs2017或者其他版本的vs,然后右键生成

    之后的操作耐心等待即可,过程很漫长,一两个小时甚至好几个小时,取决于机器性能。生成完成后在下图目录中可以找到引擎exe文件。发送到桌面快捷方式即可。

    2、用vs打开你需要编译服务器的工程,如果你创建的不是c++工程,请右键工程名,生成vs工程。

    生成完成后点击打开工程:

     

     

    你会得到如下的工程结构,

    点击此处可以启动工程:

    那么基础操作我本不太想说太细,避免篇幅太长,但是又考虑部分新手,还是简单提一下。

    3、下面需要做的就是关闭vs,不关也可以,后面根据提示重载解决方案即可,新建文件,命名看图示规则:

    记事本打开文件,写入如下代码:(有几处需要修改的,根据图示规则修改)

    代码贴一下吧:

    // Copyright 1998-2018 Epic Games, Inc. All Rights Reserved.

    using UnrealBuildTool;
    using System.Collections.Generic;

    [SupportedPlatforms(UnrealPlatformClass.Server)]
    public class TestProjectServerTarget : TargetRules
    {
        public TestProjectServerTarget(TargetInfo Target) : base(Target)
        {
            Type = TargetType.Server;
            ExtraModuleNames.Add("TestProject");
        }
    }
     

    这个代码不同版本的引擎,写法可能也有所不同(4.18后可以用上面代码),最简单的你也可以直接从官方对应的shooter game 工程目录下拷贝他的这个文件过来修改下也行。

    4、完成以上步骤之后,我们再次生成vs工程,

    打开vs,按如下图示操作:

    生成完成后,启动工程,这时候需要修改下游戏的默认服务器地图设置等等(不设置的话可能导致服务器进去是黑的,因为默认是一个空地图),根据自己项目需要设置即可。

    设置完成后,关闭引擎,回到vs,按图示步骤再次生成工程,注意的是这时生成的是服务器,

    生成完成后,在如下目录会得到一个exe文件:

    将它拷贝到我们工程打包后的如下目录,(如何打包读者自行解决,比较简单,这里不提)

    此时就可以启动我们的服务器了,有几种方式,可以右键发送到桌面快捷方式,并修改目标,加  -log(方便我们查看日志)

    然后直接打开快捷方式即可启动服务器,也可以用dos命名启动。

    启动成功如图所示:

    此时服务器便启动成功了,也就意味着我们的独立服务器打包成功了。可以启动客户端测试,输入gm命令测试:

    ~open 127.0.0.1  便可以打开地图,本篇内容到此结束,欢迎下方留言。

     

     

     

     

    展开全文
  • 1. 编译环境的搭建 visual studio2017安装 unrealengine安装: 引擎源码安装:github源码 解压之后,可以看到 首先点击Setup.bat,这个需要代理才能把资源下载下来。如何设置全局代理KM有人提供了较好的解决...

    本周工作总结:

    1. 编译环境的搭建

    • visual studio2017安装

    • unrealengine安装:

      引擎源码安装:github源码

      解压之后,可以看到
      这里写图片描述

      首先点击Setup.bat,这个需要代理才能把资源下载下来。如何设置全局代理KM有人提供了较好的解决方案。大概需要下载5g左右的文件,然后点击GenerateProjectFiles.bat,等待一两分钟后,文件内会生成UE4.sln。用vs2017打开,选择DEVELOPMENT EDITOR ,然后选择UE4,并且生成解决方案。由于是第一次生成,所以耗时非常大,大概花了半个小时才部署好,接着编译,生成了UE4。
      这里写图片描述

    2.开始虚幻引擎4之旅

    • 首先进行的是编程快速入门

      这里写图片描述

      通过这个小小的快速入门,让我学会了在虚幻引擎4中创建C++类的Actor并且在UE4编辑器使用Actor作用在地图中。

      重写Tick(float)实现Actor沿着Z轴(也就是上下)浮动的效果

      // Called every frame
      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;      //把高度以20的系数进行缩放
      RunningTime += DeltaTime;
      SetActorLocation(NewLocation);
      }
    • 接着进行的是玩家输入和Pawns

      这里写图片描述

      UPROPERTY(EditAnywhere)   //使OurVisibleComponent在UE编辑器中可以编辑。
      USceneComponent* OurVisibleComponent;
      
      // 输入函数
      void Move_XAxis(float AxisValue);
      void Move_YAxis(float AxisValue);
      void StartGrowing();
      void StopGrowing();
      // 调用以绑定功能到输入
      void AMyPawn::SetupPlayerInputComponent(class UInputComponent* InputComponent)
      {
      Super::SetupPlayerInputComponent(InputComponent);
      
      // 在按下或松开"Grow"键时进行响应。
      InputComponent->BindAction("Grow", IE_Pressed, this, &AMyPawn::StartGrowing);
      InputComponent->BindAction("Grow", IE_Released, this, &AMyPawn::StopGrowing);
      
      // 在每一帧都对两个移动坐标轴的值进行响应,它们分别是"MoveX"和"MoveY"。
      InputComponent->BindAxis("MoveX", this, &AMyPawn::Move_XAxis);
      InputComponent->BindAxis("MoveY", this, &AMyPawn::Move_YAxis);
      }   //实现了pawn可以移动,可以变大变小的控制。

      这里写图片描述

      AMyPawn::AMyPawn()
      {
      // Set this pawn to call Tick() every frame.  You can turn this off to improve performance if you don't need it.
      PrimaryActorTick.bCanEverTick = true;
        // Set this pawn to be controlled by the lowest-numbered player
        AutoPossessPlayer = EAutoReceiveInput::Player0;
      
        // Create a dummy root component we can attach things to.
        RootComponent = CreateDefaultSubobject<USceneComponent>(TEXT("RootComponent"));
        // Create a camera and a visible object
        UCameraComponent* OurCamera = CreateDefaultSubobject<UCameraComponent>(TEXT("OurCamera"));
        OurVisibleComponent = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("OurVisibleComponent"));
        //Attach our camera and visible object to our root component. Offset and rotate the camera.
        OurCamera->AttachTo(RootComponent);
        OurCamera->SetRelativeLocation(FVector(-250.0f, 0.0f, 250.0f));
        OurCamera->SetRelativeRotation(FRotator(-45.0f, 0.0f, 0.0f));
        OurVisibleComponent->AttachTo(RootComponent);
      }   //在构造函数中加入camera,使camera绑定场景,记录pawn的动作。

      最后实现了,pawn可以按空格随之变大,wasd控制方向。

    • 接着就是进行控制camera的行为。

      这里写图片描述

      // Called every frame
      void ACameraDirector::Tick( float DeltaTime )
      {
        Super::Tick( DeltaTime );
      
        const float TimeBetweenCameraChanges = 2.0f;
        const float SmoothBlendTime = 0.75f;
        TimeToNextCameraChange -= DeltaTime;
        if (TimeToNextCameraChange <= 0.0f)
        {
            TimeToNextCameraChange += TimeBetweenCameraChanges;
      
            //Find the actor that handles control for the local player.
            APlayerController* OurPlayerController = UGameplayStatics::GetPlayerController(this, 0);
            if (OurPlayerController)
            {
                if ((OurPlayerController->GetViewTarget() != CameraOne) && (CameraOne != nullptr))
                {
                    //Cut instantly to camera one.
                    OurPlayerController->SetViewTarget(CameraOne);
                }
                else if ((OurPlayerController->GetViewTarget() != CameraTwo) && (CameraTwo != nullptr))
                {
                    //Blend smoothly to camera two.
                    OurPlayerController->SetViewTargetWithBlend(CameraTwo, SmoothBlendTime);
                }
            }
        }
      }//设置每两秒跳转一个camera。
    • 然后就是学变量、定时器的行为。

      这里写图片描述

      创建一个chutdown的Actor

      //倒计时运行时长,按秒计
        int32 CountdownTime;
      
        UTextRenderComponent* CountdownText;
      
        void UpdateTimerDisplay();
      
        void AdvanceTimer();
      
        void CountdownHasFinished();
      
        FTimerHandle CountdownTimerHandle;
      ///添加类和函数
      // 设置默认值
      ACountdown::ACountdown()
      {
        // 将此 actor 设为每帧调用 Tick()。不需要时可将此关闭,以提高性能。
        PrimaryActorTick.bCanEverTick = false;
      
        CountdownText = CreateDefaultSubobject<UTextRenderComponent>(TEXT("CountdownNumber"));
        CountdownText->SetHorizontalAlignment(EHTA_Center);
        CountdownText->SetWorldSize(150.0f);
        RootComponent = CountdownText;
      
        CountdownTime = 3;
      }
      
      // 游戏开始时或生成时调用
      void ACountdown::BeginPlay()
      {
        Super::BeginPlay();
      
        UpdateTimerDisplay();
        GetWorldTimerManager().SetTimer(CountdownTimerHandle, this, &ACountdown::AdvanceTimer, 1.0f, true);
      }
      
      void ACountdown::UpdateTimerDisplay()
      {
        CountdownText->SetText(FString::FromInt(FMath::Max(CountdownTime, 0)));
      }
      
      void ACountdown::AdvanceTimer()
      {
        --CountdownTime;
        UpdateTimerDisplay();
        if (CountdownTime < 1)
        {
            // 倒计时结束,停止运行定时器。
            GetWorldTimerManager().ClearTimer(CountdownTimerHandle);
            //在定时器结束时按需要执行特殊操作。
            CountdownHasFinished();
        }
      }
      
      void ACountdown::CountdownHasFinished()
      {
        //改为一个特殊的读出
        CountdownText->SetText(TEXT("GO!"));
      }
      //由于不需要tick,所以在构造函数处把PrimaryActorTick.bCanEverTick置为false。然后设置定时器的长度和结束的时候输出GO!
    • 根据教程制作一个小的FPSdemo

      demo分为四个板块。

      由于在第4步官方的动画资源问题,导致没办法实现最终的结果。

      在这个FPSdemo中,我学会了:

      • 设置新项目
      • 在 Visual Studio 中打开项目
      • 为项目添加日志消息
      • 编译首个 C++ 类
      • 设置默认游戏模式
      • 制作新角色
      • 设置轴映射
      • 实现角色移动函数
      • 实现鼠标摄像机控制
      • 实现角色跳跃
      • 为角色添加模型
      • 更改摄像机视图
      • 为角色添加第一人称模型
      • 在游戏中添加发射物
      • 实现射击
      • 设置发射物碰撞和生命周期
      • 使发射物和世界场景形成交互
      • 在视口中添加准星
      • 设置角色动画
      • 设置事件图表
      • 添加动画状态机
      • 为动画添加转换状态
      • 将动画蓝图和角色蓝图关联起来

      不足的是:在项目的构建过程中遇到非常多问题,有一些是由于官方教程的缺陷,还有一些是由于缺少某些头文件的添加,导致在这个项目的构建过程中花费了很多的时间。

    • 查看UE4的C++编程的介绍

      • 了解了 UObjectAActorUActorComponentUStruct 的关系。

      • 了解虚幻引擎的一些标记

      • UCLASS() - 告知虚幻引擎生成类的反射数据。类必须派生自 UObject。
      • USTRUCT() - 告知虚幻引擎生成结构体的反射数据。
      • GENERATED_BODY() - UE4 使用它替代为类型生成的所有必需样板文件代码。
      • UPROPERTY() - 使 UCLASS 或 USTRUCT 的成员变量可用作 UPROPERTY。UPROPERTY 用途广泛。它允许变量被复制、被序列化,并可从蓝图中进行访问。垃圾回收器还使用它们来追踪对 UObject 的引用数。
      • UFUNCTION() - 使 UCLASS 或 USTRUCT 的类方法可用作 UFUNCTION。UFUNCTION 允许类方法从蓝图中被调用,并在其他资源中用作 RPC。

      • UE4的数据类型

      • int8/uint8 :8 位带符号/不带符号 整数
      • int16/uint16 :16 位带符号/不带符号 整数
      • int32/uint32 :32 位带符号/不带符号 整数
      • int64/uint64 :64 位带符号/不带符号整数

      • UE4的容器

      • C++和蓝图(ps:蓝图部分还不是很了解)

    • 从零开始搭建一个UE4(虚幻引擎)的联网Demo:服务器端和客户端(未完成)

      编译失败,构建不了demo。于是选择查看另一篇关于服务器和客户端的构建

      首先创建一个第三人称的C++项目。

      从文件资源管理器里面打开以前创建的项目文件夹,会有一个名为source的文件夹。打开这个

      Sourcefolder.png

      在里面你会找到一些visual studio源文件。获取其中一个源文件并复制并粘贴它,然后将其重命名以匹配其他文件。格式是gamenameServer.Target.cs所以在我的情况下,因为我的项目游戏名称被称为测试我将我的文件重命名为testServer.Target.cs,所以

      Testserver.png

      右键单击此新创建的文件,然后单击编辑

      Editfile.png

      using UnrealBuildTool;
      using System.Collections.Generic;
      
      [SupportedPlatforms(UnrealPlatformClass.Server)]
      public class testServerTarget : TargetRules   // Change this line as shown previously
      {
           public testServerTarget(TargetInfo Target) : base(Target)  // Change this line as shown previously
           {
            Type = TargetType.Server;
          bUsesSteam = true;
      
            ExtraModuleNames.Add("test");    // Change this line as shown previously
           }
      }  //UE4.16后可以用这个版本。

      在项目文件夹中右键单击uproject文件,弹出菜单时选择“切换虚幻引擎版本”

      如果右键单击uproject文件,则不会显示如下所示的菜单

      Build server.png

      设置用自己编译的UE版本启动。

      打开之后,可以选择创建一个空的c++类,让vs完全加载,准备就绪。

      转到下拉框,然后在菜单中选择DEVELOPMENT EDITOR

      Developmenteditor.png

      然后转到解决方案资源管理器,然后右键单击并单击构建

      Buildserver.png

      再次取决于你的电脑,这可能需要很长时间才能完成。

      完成后,返回菜单,然后在下拉框中选择DEVELOPMENT SERVER

      Development server.png

      然后转到解决方案资源管理器,然后右键单击并单击构建

      Buildserver.png

      再次取决于您的计算机,这可能需要很长时间才能完成。

      一旦服务器建成,如果你再次进入你的项目文件夹然后点击二进制文件,win64你应该有像这样的服务器文件

      Serverfiles.png

      然后重新打开UE编辑器,但是很不幸的是我出现了以下这个问题。

      这里写图片描述
      这里写图片描述

      上网查询也没有得到结果。用vs编译和用启动器打开都没办法。于是只好重新再处理一遍。

    • 了解RPC

      看了几篇博客,大概列举三篇,但是还是未能实际应用,所以只是大概了解了一些概念。

      这里写图片描述

    下周工作计划 :

    • [ ] 熟悉RPC和了解同步的过程。
    • [ ] 把服务器的demo跑通并且了解代码的架构
    • [ ] 入门蓝图(blueprint)和熟悉事件图表和动画图表。
    • [ ] 加深巩固对UE4编辑器的使用方法
    • [ ] 熟悉UE4提供的API和使用方法和使用场景
    • [ ] 尝试自己脱离教程制作一个小小的demo。
    展开全文
  • https://docs.unrealengine.com/latest/CHN/Programming/Development/BuildConfigurations/index.html 编译配置描述 虚幻引擎 4 采用了一种自定义的编译方式,通过我们的 UnrealBuildTool 工具(UBT)。该工具通过...
  • 独立服务器打包步骤: 1.Source下复制ProjectnameEditor.Target.cs,并改名为ProjectnameServer.Target.cs; 2.切换uproject的editor为源码版,然后重新生成sln,打开sln,设置为Develop Editor, UnrealBuildTool,...
  • 今年是第二次参加UnrealOpenDay活动,收获颇丰,也认识了很多业界大咖。这里稍微详细点的总结一下会议内容和参会心得。 首先是行程: 会议9点签到,9:45正式开始。地点和去年一样还是在宝华万豪酒店,位于上海马戏...
  • UnrealScript语言参考

    2011-01-23 01:15:00
    最初作者是Tim Sweeney (EpicGames)  内容UnrealScript语言参考介绍快速链接本文档的目的UnrealScript的设计目标虚幻引擎3中UnrealScript的新功能代码结构示例Unreal虚拟机对象层次类变量变量类型内置类型集合...
  • 1. 从GitHub下载源码解压后,需要先执行Setup.bat,如果处于需要代理才能访问网络的话,需要修改setup.bat, 给GitDependencies.exe添加--proxy命令行,如 GitDependencies.exe --proxy=1.2.3.4:8080
  • [b]Xoreax IncrediBuild[/b]是分布式编译(多线程处理)技术,我们也称之为联合编译.如果局域网内存在多台电脑安装了这个,在编译C/C++时,它会使用空闲的CPU一起编译,大大缩短了编译的时间,对于大工程来说,是一件非常爽...
  • Unreal输出Log的方法

    2016-09-08 14:25:59
    1. 把log显示到屏幕上 GEngine->AddOnScreenDebugMessage(-1, 5.f, FColor::Blue, TestHUDString); 2. 把log打印到Output_Log窗口 ...可使用现有的类别(在 OutputDevices.h 中用 DECLARE_LOG_CATEGORY_EXTE
  • UE4的交叉编译可以使开发者使用Windows平台来开发Linux上运行的项目。 尝试使用的源码版本为4.16.2 我按照官方论坛上的方法试验了一下,具体步骤如下: 1、下载官方提供的工具链Clang3.9.0 官方下载链接 2、可以新建...
  • ue4 远程编译打包iOS流程,ue4 打包iOS,如果有c++,插件,就需要用xcode编译了,就连换个icon图标也需要xcode编译。 下面介绍一下ue4远程编译打包iOS的流程。本人当时用的环境:ue4 4.21,MAC...
  • 一、下载源码及编译 ...注意:编译专用服务器,只能用源码编译版本的引擎,安装版本的引擎无法编译Server。 打开页面后下载一个最新的release版本,解压出来后先运行Setup.bat,会自动下载资源...
  • 在UE中, 按下~键可以调用到许多有用的指令, 调试场景时能透过此功能深入测试 : Exec的命令是基于字符串的命令,您可以在游戏或编辑器中运行。他们也被称为控制台命令 ,因为它们通常在一个控制台窗口中运行。...
  • 集成Wwise到Unreal Engine

    2019-06-30 18:12:21
    集成Wwise到Unreal Engine 当前受众较广的商业游戏引擎有 Unreal Engine、Unity、cocos2d-x等,在音频领域的第三方中间件则有Wwise、FMOD、Criware等,言多且烦,我们首先集成Wwise到 Unreal Engine ...
  • 我们在本地mysql灵活运用了之后,就是部署到我们的云服务器上了,作为云服务器,我也用过一段时间的windows,效果不尽人意,同时处理性能不佳,如果你是土豪可以忽视,无限充值加配置即可,这也是为什么大多数人...
  • Unreal引擎术语表

    2015-11-21 08:39:08
    Unreal引擎术语表 转载自UDN: ‍Actor - 一个可以放置在世界中或者在世界中产生的对象。这包括类似于Players(玩家)、Weapons(武器)、 Trash.StaticMeshes(静态网格物体)、Emitters(编辑器)、 Infos以及 ...
  • Unreal Engine4(虚幻4)总览和下载地址
1 2 3 4 5 ... 20
收藏数 733
精华内容 293
关键字:

unreal 编译服务器