Skip to content

Commit 1f1a192

Browse files
emilymvaughancwaringmishmoshgithub-actions[bot]markg85
authored
Add blog: "3S Studio: Bringing Unreal Engine to IPFS" (ipfs#493)
* Update from Forestry.io [email protected] updated src/_blog/releasenotes.md * Update from Forestry.io [email protected] updated src/_blog/releasenotes.md * Update from Forestry.io [email protected] created src/assets/ipfs-blog-header_-reframe.png [email protected] created src/_blog/introducing-reframe.md * Update from Forestry.io [email protected] updated src/_blog/introducing-reframe.md * Update from Forestry.io [email protected] updated src/_blog/introducing-reframe.md * Update from Forestry.io [email protected] updated src/_blog/introducing-reframe.md * Update from Forestry.io [email protected] updated src/_blog/introducing-reframe.md * Update from Forestry.io [email protected] created src/_blog/welcome-to-ipfs-news-184.md * Update from Forestry.io [email protected] created src/assets/cover-afade294.png * Update from Forestry.io [email protected] updated src/_blog/welcome-to-ipfs-news-184.md * Update from Forestry.io [email protected] updated src/_blog/welcome-to-ipfs-news-184.md * Update from Forestry.io [email protected] created src/assets/ipfs-blog-header_-ipfs-camp.png [email protected] created src/_blog/announcing-the-second-ever-ipfs-camp.md * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Optimised images with calibre/image-actions * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update src/_blog/announcing-the-second-ever-ipfs-camp.md Co-authored-by: Mosh <[email protected]> * Update announcing-the-second-ever-ipfs-camp.md * Update from Forestry.io [email protected] created src/assets/untitled-6.png * Update from Forestry.io [email protected] created src/_blog/free-to-use-blockchain-koinos-introduces-plugin-architecture-for-developers-that-relies-on-libp2p.md * Update from Forestry.io [email protected] deleted src/_blog/free-to-use-blockchain-koinos-introduces-plugin-architecture-for-developers-that-relies-on-libp2p.md * Update from Forestry.io [email protected] deleted src/_blog/free-to-use-blockchain-koinos-introduces-plugin-architecture-for-developers-that-relies-on-libp2p.md * Update from Forestry.io [email protected] created src/_blog/free-to-use-blockchain-koinos-introduces-plugin-architecture-for-developers-that-relies-on-libp2p.md * Update from Forestry.io [email protected] updated src/_blog/free-to-use-blockchain-koinos-introduces-plugin-architecture-for-developers-that-relies-on-libp2p.md * Update from Forestry.io [email protected] created src/_blog/welcome-to-ipfs-news-185.md * Update from Forestry.io [email protected] updated src/_blog/welcome-to-ipfs-news-185.md * Update from Forestry.io [email protected] updated src/_blog/welcome-to-ipfs-news-185.md * Update from Forestry.io [email protected] updated src/_blog/releasenotes.md * Update from Forestry.io [email protected] created src/_blog/welcome-to-ipfs-news-186.md * Update from Forestry.io [email protected] created src/assets/banner-2.png [email protected] updated src/_blog/welcome-to-ipfs-news-186.md * Update from Forestry.io [email protected] updated src/_blog/welcome-to-ipfs-news-186.md * Update from Forestry.io [email protected] updated src/_blog/welcome-to-ipfs-news-186.md * Optimised images with calibre/image-actions * Update from Forestry.io [email protected] created src/_blog/ipfs-over-webdav.md * Update from Forestry.io [email protected] updated src/_blog/ipfs-over-webdav.md * Update from Forestry.io [email protected] created src/assets/0003_v2.jpg [email protected] updated src/_blog/ipfs-over-webdav.md * Update src/_blog/ipfs-over-webdav.md Co-authored-by: Mark Gaiser <[email protected]> * Update src/_blog/ipfs-over-webdav.md Co-authored-by: Mark Gaiser <[email protected]> * Update src/_blog/ipfs-over-webdav.md Co-authored-by: Mark Gaiser <[email protected]> * Update src/_blog/ipfs-over-webdav.md Co-authored-by: Mark Gaiser <[email protected]> * Update from Forestry.io Alex Potsides updated src/_blog/releasenotes.md * Update from Forestry.io Alex Potsides updated src/_blog/releasenotes.md * Update from Forestry.io Alex Potsides updated src/_blog/releasenotes.md * Update from Forestry.io Alex Potsides updated src/_blog/releasenotes.md * Update from Forestry.io Alex Potsides updated src/_blog/releasenotes.md * Update from Forestry.io Alex Potsides updated src/_blog/releasenotes.md * Update from Forestry.io Alex Potsides updated src/_blog/releasenotes.md * Update from Forestry.io [email protected] created src/_blog/welcome-to-ipfs-news-187.md * Update from Forestry.io [email protected] updated src/_blog/welcome-to-ipfs-news-187.md * Update from Forestry.io [email protected] updated src/_blog/welcome-to-ipfs-news-187.md * Update from Forestry.io [email protected] updated src/_blog/newscoverage.md * Update from Forestry.io [email protected] created src/assets/ipfs-blog-header_-ipfs-__-hedera-blog-post-header.png * Update from Forestry.io [email protected] created src/assets/ipfs-vc.png * Update from Forestry.io [email protected] created src/_blog/guardian-ipfs-hedera.md * Optimised images with calibre/image-actions * Update from Forestry.io Dietrich Ayala created src/_blog/adding-ipfs-protocol-support-to-chromium.md * Update from Forestry.io Dietrich Ayala updated src/_blog/adding-ipfs-protocol-support-to-chromium.md * Update from Forestry.io Dietrich Ayala created src/assets/chromium-handler-diagram.png Dietrich Ayala created src/assets/browsers-2022-table.png * Update from Forestry.io Dietrich Ayala updated src/_blog/adding-ipfs-protocol-support-to-chromium.md * Update from Forestry.io Dietrich Ayala updated src/_blog/adding-ipfs-protocol-support-to-chromium.md * Update from Forestry.io Dietrich Ayala updated src/_blog/adding-ipfs-protocol-support-to-chromium.md * Update from Forestry.io Dietrich Ayala updated src/_blog/adding-ipfs-protocol-support-to-chromium.md * Update from Forestry.io [email protected] created src/assets/ipfs-blog-header_-chromium-protocol-handlers-post.png [email protected] updated src/_blog/adding-ipfs-protocol-support-to-chromium.md * Optimised images with calibre/image-actions * Update from Forestry.io [email protected] updated src/_blog/adding-ipfs-protocol-support-to-chromium.md * Update from Forestry.io [email protected] created src/assets/0000_v2.jpg [email protected] created src/_blog/3s-studio-bringing-unreal-engine-to-ipfs.md * resolve merge conflict Co-authored-by: Chris Waring <[email protected]> Co-authored-by: Mosh <[email protected]> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Mark Gaiser <[email protected]> Co-authored-by: Alex Potsides <[email protected]> Co-authored-by: Dietrich Ayala <[email protected]>
1 parent d33bace commit 1f1a192

File tree

3 files changed

+64
-0
lines changed

3 files changed

+64
-0
lines changed

.forestry/front_matter/templates/blog-post.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,7 @@ fields:
150150
target="_blank">file an issue</a> with the details.
151151
pages:
152152
- src/_blog/2021-05-31-distributed-wikipedia-mirror-update.md
153+
- src/_blog/3s-studio-bringing-unreal-engine-to-ipfs.md
153154
- src/_blog/a-brave-new-wallet-the-future-of-the-browser-wallet.md
154155
- src/_blog/a-guide-to-ipfs-connectivity-in-web-browsers.md
155156
- src/_blog/about-500-000-in-prizes-and-grants-for-asia-hackathon-season-2021.md
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
---
2+
title: '3S Studio: Bringing Unreal Engine to IPFS'
3+
description: 3S Studio can free game developers from platform dependency via IPFS.
4+
author: Adam Grodzki
5+
date: 2022-11-15
6+
permalink: "/2022-11-15-3s-studio/"
7+
translationKey: ''
8+
header_image: "/0000_v2.jpg"
9+
tags: []
10+
11+
---
12+
3S Studio is a game development team that has implemented an IPFS plugin for the popular and widely-used Unreal Engine for 3D computer graphics. The plugin was created with close cooperation with Filecoin Foundation and Protocol Labs and is available on the [official Unreal Engine marketplace](https://www.unrealengine.com/marketplace/en-US/product/ipfs). It can be used directly within C++ and is also fully exposed to Blueprints. The download includes full documentation, learning materials, as well as example content and projects.
13+
14+
After the September 2022 release for versions 4.27 and 5.0, the team plans to continue updates for all future versions and Unreal Engine 4 as long as new versions don’t rely on UE5-only features.
15+
16+
# .pak and Modular Gameplay Features
17+
18+
The most important feature in 3S Studio’s plugin is that, due to the nature of gameplay modular features — being loaded on demand at runtime — the team was able to package them as separate .pak files and load them dynamically into the game. As references are encapsulated within the feature, it requires almost no extra effort to register the newly created asset classes, as features have their own initialization process.
19+
20+
As Unreal Engine is under active development — tracking new features and plans — 3S Studios foresees that similar treatment will be given to Data Layers. This means that, in the future, it will be able to mount and load objects directly related to quests, events, and context of the gameplay.
21+
22+
In a demo project, 3S Studio was able to reduce the content size of a game from **2 gigabytes to 40 megabytes**, with the rest of the content being downloaded only on demand. This workflow can potentially decrease installation sizes of games in the future.
23+
24+
# Supported Platforms
25+
26+
The common gateways predefined at launch are:
27+
28+
* IPFS
29+
* Cloudflare
30+
* Pinata
31+
* Infura
32+
* Web3.Storage
33+
* NFT.Storage
34+
* Local desktop node
35+
36+
Developers can also configure access to any custom gateway such as a private one or a testing environment gateway.
37+
38+
# Why 3S Studio Uses IPFS
39+
40+
There are a number of subsystems, cloud storages, and service providers that allow you to store data in the cloud and directly access it from the game. Until now, all of those systems have been centralized and usually require predefinition and provide limited configuration using online proprietary service administration panels.
41+
42+
This is where IPFS is important for a project like 3S Studio. As a web3-based stack, IPFS brings a lot more to the table for game developers than traditional cloud storage providers thanks to [content-addressing](https://docs.ipfs.tech/concepts/content-addressing/).
43+
44+
It is also a step forward when compared to other web3 projects such as regular blockchain networks with limited storage functionalities. Many developers approach web3 in ways that feel "forced in" instead of being of actual utility to the end users. IPFS, however, solves many tangible problems for a web3 game developer by helping with:
45+
46+
* Storage of large quantities of big “save game” files on-chain, solving an issue that already [affects](https://www.gamesradar.com/red-dead-redemption-2-fan-with-nearly-6000-hours-on-stadia-begs-rockstar-for-character-transfer/) users when platforms shut down.
47+
* Storage of user data (for example achievements, game progress, anonymous metrics) in a JSON format and track changes for such data using IPNS.
48+
* Saving, storing, and sharing between players – schematics, blueprints and other user-created content.
49+
* Loading data to disc, or parse directly into memory as usable parameters (string values, texture 2d from image, sound wave from a wave sound file).
50+
* Patching games and distributing content, DLCs, cosmetic packs, battle pass content, and live service content.
51+
* Allowing the core game to stay the same for everyone with unlimited customizations that are shippable to end-users.
52+
53+
IPFS even solves issues that modern life-sim and casual games have. It can be easily used for the distribution and storage of vast numbers of user created patterns, blueprints, and parameterized items. This allows developers to create a stack of incremental updates that can be applied in order to a physically shipped base game.
54+
55+
The biggest feature of using IPFS is that the game’s creators are running the service and no longer depend on third-party services. Centralization of usable features on platforms like Steam put game developers in a weak position where they are vendor-locked and have to give up a 30% cut of their revenue. With IPFS, developers are free from platform dependency.
56+
57+
# Future Plans
58+
59+
After the release, 3S Studio plans to continue the development of new IPFS features into the plugin as supplementary tools that will help utilizing the full potential of the distributed game builds.
60+
61+
By the end of the year, the team aims to implement versioning via IPNS, upload of entire folders and complex structures, and chunking via CAR containers. It will also work on a fully functional and easily configurable workflow for packaging and shipping content in multiple .pak files.
62+
63+
If you’d like to stay updated on 3S Studio’s plans follow the team on [Twitter](https://twitter.com/3SGameStudio) or visit the [3S Studio website](https://www.3studio.online/).

src/assets/0000_v2.jpg

183 KB
Loading

0 commit comments

Comments
 (0)