AI赋能游戏开发,如何更好地处理随之而来的海量数据,更好地利用开发游戏?
人工智能(AI)正在改变我们所知的游戏行业。它为3A工作室、独立开发者和业余爱好者提供了工具,让他们能够更轻松地创建以前需要大量时间和资源的项目。尤其是,虚幻引擎的AI工具已经取得了显著的进步。
虚幻引擎AI拥有专门用于游戏、数字人(MetaHuman)和智能对象程序生成的工具,它有可能改变开发者和创作者在各个行业中的工作方式。
本篇文章将深入探讨虚幻引擎AI工具(例如程序化内容生成框架和数字人动画师(MetaHuman Animator),这些工具将如何影响独立游戏开发者,使用虚幻引擎AI的挑战,以及你的团队如何才能充分发挥其优势。
游戏中的程序生成是什么?
程序生成是指通过计算机创建内容和数据。通过在游戏中使用程序生成,开发人员可以使用算法来构建视觉资产,例如风景、3D 对象、建筑物、角色甚至整个世界。
游戏中的程序生成技术有可能减少曾经用于设计游戏环境的手动过程。这项技术还让游戏开发人员能够回收游戏资产,创造新颖的资产。
在一个需要内容更新速度快于团队执行速度的世界中,程序化的内容生成为开发人员提供了一种满足这些需求且不必牺牲质量的方式。
虚幻引擎中的程序内容生成框架(PCG)
在虚幻引擎中,程序内容生成框架(PCG)是一个工具集,具有创建程序内容和工具的能力。
要使用PCG,美术人员首先要设置规则和参数。然后工具会快速生成内容,创建详细的环境,例如森林和城市。程序内容生成框架还可以生成蓝图、灯光、声音、粒子等。
游戏中的程序生成如何赋能独立开发者
游戏中的程序生成对独立游戏开发者有着巨大的潜在影响。与3A级工作室相比,这些团队的资金、人员和资源通常较少。
例如,独立工作室Hello Games于2016年发布了《无人深空(No Man's Sky)》。这款屡获殊荣的大型太空探索游戏拥有185亿个程序生成的世界。要访问游戏中的每一个星球,用户需要花费50亿年的时间。随着独立团队不断将程序生成技术整合到他们的工作流程中,他们将有能力创造出在质量和深度上可以与3A工作室开发的游戏相媲美的游戏。
虚幻引擎中的数字人动画师是什么?
数字人动画师(MetaHuman Animator)是虚幻引擎中的另一个AI工具,它可以让游戏开发者和创作者创建逼真的人类角色并制作动画。以前,只有熟练的动画师才能创建数字角色,而这一过程可能需要几个月的时间。
有了数字人动画师,创作者只需要一部iPhone或一个安装在头盔上的立体摄像机就能捕捉演员的镜头。从这里,动画师会准确地捕捉演员的表情和细微差别,并在几分钟内制作出数字人角色的最终动画。
Perforce 2023年游戏开发与设计状况报告
在对游戏开发者的调查中,31%的人表示“构建时间过长”是他们面临的最大挑战,18%的人表示“没有足够的时间进行迭代”是他们面临的最大挑战。了解有关游戏行业的更多信息:
立即获取
用于创建虚幻引擎AI的其他工具
除了程序内容生成框架和数字人动画师之外,虚幻引擎还创建了以下AI工具和功能:
-
行为树资产:这些资产能够为非玩家角色创建AI,使AI角色能够根据预定的逻辑做出反应和决策;
-
导航系统:使AI代理能够在导航到目的地时确定并使用最佳路径;
-
智能对象:为AI开发的代理和玩家进行交互而设计,其中包含交互所需的数据。
使用虚幻引擎AI会遇到哪些挑战?
尽管使用AI可以提高资产创建效率,但它也有其缺点和成本。下面是使用虚幻引擎AI会面临的三大挑战:
需要处理更大规模、更复杂的资产
随着虚幻AI工具的兴起,游戏行业出现了一个名为“10x环境”的术语。考虑到游戏中的角色、关卡、配件或由复杂程度增加10倍的纹理和材料组成的渲染世界,其复杂程度也将提高10倍。在这种转变过程中,团队需要具备计算和存储能力,才能处理这些复杂的资产。
此外,创作者通常会在设计和制作工作流程的多个阶段生成这些超大文件的多个版本。随着这些项目的扩大,工作被覆盖或完全丢失的风险也随之增加。
资产量更大
同样,在游戏中使用像程序生成这样的工具,也会大大增加工作中的资产数量。这意味着将有更多的资产需要进行存储、版本控制和跟踪。随着从游戏到视觉特效等行业的节奏越来越快、竞争越来越激烈、全球分布越来越广,保护和集中资产以实现无缝协作、节约时间变得比以往任何时候都更加重要。
仍在开发中的新工具
最后,程序内容生成框架和数字人动画师等工具在2023年夏天随虚幻引擎5.2版本一起发布。使用这种新技术也有缺点,因为可用来排除故障的用例和资源较少。
许多创作者需要将他们的UE项目转移到功能更强大的高级3D动画软件中,例如Maya和Blender等。但这种做法只会让他们本已复杂且数量庞大的项目更加分散。
如何真正从虚幻引擎AI中受益
为了应对所有挑战,您的团队需要一些工具来跟踪所有数字资产并将其存放在一个中心位置。
从版本控制系统开始
许多使用虚幻引擎的团队也使用版本控制系统——这是一个用于存储、管理文件随时间推移而发生的更改的重要工具。Perforce Helix Core是游戏开发行业的标准版本控制系统。
Perforce Helix Core使全球团队能够安全、高效地协作,它创建了一个单一的可信数据源和平台,帮助团队更快地开展工作。Perforce Helix Core可以跟踪和管理源代码、数字资产、大型二进制文件等的变更。
作为唯一可以随着项目增长而无限扩展的版本控制和协作系统,您的团队可以在不牺牲性能的情况下使用Perforce Helix Core。Perforce Helix Core具有签出或自动锁定文件的能力,因此团队无需担心在开发复杂的项目时会覆盖彼此的工作。
虚幻引擎还与Perforce Helix Core进行了长期的内置集成。这两个工具紧密集成,可以帮助您的团队在项目中更高效地协同工作。
将所有内容存储在数字资产管理工具中
考虑到虚幻引擎AI所开发的资产数量和文件大小,拥有一个无限且集成的可视化库比以往任何时候都更加重要。如果没有一个强大的DAM(数字资产管理器),查找文件、重复使用文件、安全共享文件和审查文件几乎是不可能的。
Helix DAM建立在Perforce Helix Core之上,是存储、查找、预览、审查和跟踪所有艺术资产(包括2D、3D、视频和音频文件)进度的最有效方式。Helix DAM与您现有的项目流水线协同工作,并与Blender和Maya等工具集成。
将所有的资产集中在一个地方,还可以帮助您直观地了解哪些资产可以用作游戏中程序生成的框架。
免费开始使用Perforce Helix Core和Helix DAM
为您的团队免费获取版本控制软件,立即开始体验虚幻AI的全部优势。Perforce Helix Core 最多可供5位用户免费使用,对功能没有限制。在沙盒中可免费试用Helix DAM 14 天,无需任何承诺或设置。
Perforce Helix Core赢得了全球19/20家顶级3A游戏开发工作室和顶级虚拟制作团队的信任,您也可以立即体验它的功能,可以从小规模开始使用,小团队可永久免费使用。
文章来源:https://bit.ly/3TBsxOT
相关文章:
AI赋能游戏开发,如何更好地处理随之而来的海量数据,更好地利用开发游戏?
人工智能(AI)正在改变我们所知的游戏行业。它为3A工作室、独立开发者和业余爱好者提供了工具,让他们能够更轻松地创建以前需要大量时间和资源的项目。尤其是,虚幻引擎的AI工具已经取得了显著的进步。 虚幻引擎AI拥有专门用于游戏…...
Serverless架构学习路线及平台对比
在云计算领域,Serverless架构已经成为了一个重要的趋势。本文将为你提供一条清晰的Serverless架构学习路线,帮助你系统地掌握这个领域的知识,并对比国内外的Serverless平台的优缺点。 一、基础理论学习 首先,我们需要理解Server…...
解决ROS含动态参数的Config文件无法正确识别的错误
问题描述 功能包名为paddle_detection 在工作空间下, 通过catkin_make可以正常通过编译且执行无异常, 可以通过bloom-generate rosdebian生成依赖 但是在将其打包成deb包的过程中fakeroot debian/rules binary报错 fatal error: paddle_detection/paddle_detectionConfig.…...
探索 PyTorch 中的 torch.nn 模块**(1)
目录 引言 torch.nn使用和详解 Parameter 函数作用 使用技巧 使用方法和示例 UninitializedParameter 特点和用途 可进行的操作 使用示例 UninitializedBuffer 特点和用途 可进行的操作 使用示例 Module**(重点) 关键特性和功能 举例说…...
【WPF.NET开发】预览事件
本文内容 先决条件预览标记为“已处理”的事件通过控件解决事件禁止问题 预览事件,也称为隧道事件,是从应用程序根元素向下遍历元素树到引发事件的元素的路由事件。 引发事件的元素在事件数据中报告为Source 。 并非所有事件场景都支持或需要预览事件。…...

JDBC->SpringJDBC->Mybatis封装JDBC
一、JDBC介绍 Java数据库连接,(Java Database Connectivity,简称JDBC)是Java语言中用来规范客户端程序如何来访问数据库的应用程序接口,提供了诸如查询和更新数据库中数据的方法。JDBC也是Sun Microsystems的商标。我们…...
ts中的keyof 关键字
const getVal <T,K extends keyof T>(obj:T,key:K) : T[K]>{return obj[key]; }使用了 keyof 关键字。keyof 是 TypeScript 的一个特性,它返回一个字符串字面量类型,表示对象类型的所有属性键的联合类型。 这段代码定义了一个泛型函数 gatVal&…...

Head First Design Patterns - 装饰者模式
什么是装饰者模式 装饰者模式动态地将额外责任附加到对象上。对于拓展功能,装饰者提供子类化的弹性替代方案。 --《Head First Design Patterns》中的定义 为什么会有装饰者模式 根据上述定义,简单来说,装饰者模式就是对原有的类,…...

MySQL 执行过程
MySQL 的执行流程也确实是一个复杂的过程,它涉及多个组件的协同工作,故而在面试或者工作的过程中很容易陷入迷惑和误区。 MySQL 执行过程 本篇将以 MySQL 常见的 InnoDB 存储引擎为例,为大家详细介绍 SQL 语句的执行流程。从连接器开始&…...

判断电话号码是否重复-excel
有时候重复的数据不需要或者很烦人,就需要采取措施,希望以下的方法能帮到你。 1.判断是否重复 方法一: 1)针对第一个单元格输入等号,以及公式countif(查找记录数的范围,需要查找的单元格) 2…...

【Java开发岗面试】八股文—Java虚拟机(JVM)
声明: 背景:本人为24届双非硕校招生,已经完整经历了一次秋招,拿到了三个offer。本专题旨在分享自己的一些Java开发岗面试经验(主要是校招),包括我自己总结的八股文、算法、项目介绍、HR面和面试…...

【Linux】Linux 下基本指令 -- 详解
无论是什么命令,用于什么用途,在 Linux 中,命令有其通用的格式: command [-options] [parameter] command:命令本身。-options:[可选,非必填]命令的一些选项,可以通过选项控制命令的…...

Eureka注册及使用
一、Eureka的作用 Eureka是一个服务注册与发现的工具,主要用于微服务架构中的服务发现和负载均衡。其主要作用包括: 服务提供者将自己注册到Eureka Server上,包括服务的地址和端口等信息。服务消费者从Eureka Server上获取服务提供者的地址…...

Ubuntu之修改时区/时间
1、查看当前时间及时区状态 sudo timedatectl status # 显示当前时区为Asia/Shanghai 2、查看当前系统时间 sudo date 3、查看当前系统时间及时区 sudo date -R # 显示当前时间及对应时区,时区为“0800”北京时区 4、修改硬件时间 修改日期格式:…...
4、内存泄漏检测(多线程)
4、内存泄漏多线程 多线程下使用Valgrind 工具的memcheck检查. 安装 sudo apt install valgrind使用 valgrind --toolmemcheck --leak-checkfull ./app_main 指令效果如下所示. wqwq-Virtual-Machine:~/work/test_zlog/build$ valgrind --toolmemcheck --leak-checkfull .…...
在使用tcp长连接时,是否还需要再引入重发机制?
一 什么是tcp长连接? 在TCP(Transmission Control Protocol)中,长连接是指在通信过程中保持连接状态的一种方式,相对于短连接而言。长连接通常用于需要频繁通信的场景,以减少连接建立和断开的开销。在长连接…...

记一次Oracle Cloud计算实例ssh恢复过程
#ssh秘钥丢失# , #Oracle Cloud# 。 电脑上的ssh秘钥文件不知道什么时候丢失了,直到用的时候才发现没有了,这下可好,Oracle Cloud的计算实例连不上了,这个实例只能通过ssh连接上去: 以下是解决步骤&#x…...

2024年01月数据库流行度最新排名
点击查看最新数据库流行度最新排名(每月更新) 2024年01月数据库流行度最新排名 TOP DB顶级数据库索引是通过分析在谷歌上搜索数据库名称的频率来创建的 一个数据库被搜索的次数越多,这个数据库就被认为越受欢迎。这是一个领先指标。原始数…...

Stable Diffusion API入门:简明教程
Stable Diffusion 是一个先进的深度学习模型,用于创造和修改图像。这个模型能够基于文本描述来生成图像,让机器理解和实现用户的创意。使用这项技术的关键在于掌握其 API,通过编程来操控图像生成的过程。 在探索 Stable Diffusion API 的世界…...
数据结构--二叉搜索树的实现
目录 1.二叉搜索树的概念 2.二叉搜索树的操作 二叉搜索树的插入 中序遍历(常用于排序) 二叉搜索树的查找 二叉搜索树的删除 完整二叉树代码: 二叉搜索树的应用 key/value搜索模型整体代码 1.二叉搜索树的概念 二叉搜索树又称二叉排序树,它或者是一…...

linux之kylin系统nginx的安装
一、nginx的作用 1.可做高性能的web服务器 直接处理静态资源(HTML/CSS/图片等),响应速度远超传统服务器类似apache支持高并发连接 2.反向代理服务器 隐藏后端服务器IP地址,提高安全性 3.负载均衡服务器 支持多种策略分发流量…...
论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)
HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/
使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题:docker pull 失败 网络不同,需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...

深度学习习题2
1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...