Help with my assignment!
Read Time:2 Minute, 8 Second

NASA, the U.S. space agency, has partnered with Epic Games, the company behind Fortnite, to build a challenge for developers to help create a Martian metaverse experience. The challenge will include various tasks, including designing several key environments for Martian astronauts, which will be rendered using Epic Games’ Unreal Engine 5 to provide a realistic environment.

NASA to Develop Martian Metaverse to Help in Training Exercises

NASA, the U.S. space agency, has recently posted a challenge to attract developers to help build a Martian metaverse environment to aid in training purposes. The challenge, which was posted in Herox, a crowdsourcing problem-solving platform, calls for developers to aid the institution in building “Virtual Reality (XR) assets and scenarios for use by NASA in research focused on extravehicular activities on the surface of Mars.”

The challenge aims to populate an already-started metaverse world called MarsXR, which has now mapped 400 km2 of Mars terrain, with realistic day/night cycles, all modeled with Epic Games’ Unreal Engine 5, which will also be used by the developers to create the submissions in the challenge.

Virtual Experiences

The virtual experiences that NASA has defined as categories for this task include set up camp, scientific research, maintenance, exploration, and blow our minds, each one with a different purpose to fulfill. The challenge will reward the winners with a total prize purse of $70,000, shared across twenty individual prizes. This means that each prize for every category will be an average of $6K.

This activity has already gathered a lot of attention from several groups that want to contribute to grow NASA’s Martian metaverse, according to the Herox page. More than 24 teams and 237 innovators are contributing to the construction of the Martian simulation, which will help the agency to cut costs by using a virtual reality module known as Apache to train upcoming astronauts in various experiences.

While institutions have been slow to adopt virtual reality and metaverse-based apps, this seems to be changing, as both Microsoft and Meta are introducing virtual reality suites in the field. Microsoft announced last year it would integrate Mesh, an app that will replace video with digital avatars for meetings and presentations, directly into the popular Microsoft Teams app. For its part, Meta just announced the launch of Venues in its flagship metaverse app, Horizon Worlds.

What do you think about NASA’s Martian metaverse approach? Tell us in the comments section below.

One thought on “NASA Partners With Epic Games to Create a Martian Metaverse Simulation

  1. Hi everyone,I've been spending sometime reading smart contracts, there has been so many exploits that I'm interest in how smart contracts are coded/work. One thing I've noticed over the years is smart contract approval and now after reading some smart contracts I know how they work so I thought I would explain it.

    Here is a typical approve function,

    function approve(address spender, uint256 amount) public virtual override returns (bool) {

    _approve(_msgSender(), spender, amount);

    return true;


    function _approve(address owner, address spender, uint256 amount) internal virtual {

    require(owner != address(0), “ERC20: approve from the zero address”);

    require(spender != address(0), “ERC20: approve to the zero address”);

    _allowances[owner][spender] = amount;

    emit Approval(owner, spender, amount);


    As you can see approve calls _approve, which then does some validation then get your allowances mapping (address => uint256) for your address (_allowances[owner]) then it updates the allowance for the spender(the smart contract address you are approving) to the amount provided in the call to approve.So far example you could approve contract A to be about to spend 10 and contract B to spend 1. So far this seems like a simple way to manage risk for the user.

    But I've never seen a contract approval dialog on a website ever offer an amount I want to approve. Why won't a dapp offer the ability to set the amount you want to approve?

    Also if your interested, below is a typical transferFrom function that uses the approval/_allowances to make sure the smart contract isnt spending more than you have approved and subtracts the amount spent from the allowance, so if you approve 10, the smart contract can only spend 10

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {

    _transfer(sender, recipient, amount);

    _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, “ERC20: transfer amount exceeds allowance”));

    return true;


    So smart contract approval is normally you saying the smart contract can spend as much of your ERC20 token as the contract wants, so be very careful when approving any smart contract, as it could be approving any ERC20, e.g. you approve a contract and what you didnt realise (because you would need to read the transaction) it could be approving the hackers contract to spend any ERC20 token and the moment you realise will be once your tokens are gone. Be safe

Leave a Reply

Your email address will not be published.

  • bitcoinBitcoin (BTC) $ 20,198.00
  • ethereumEthereum (ETH) $ 1,350.82
  • tetherTether (USDT) $ 1.00
  • bnbBNB (BNB) $ 293.81
  • usd-coinUSD Coin (USDC) $ 1.00
  • xrpXRP (XRP) $ 0.495981
  • binance-usdBinance USD (BUSD) $ 1.00
  • cardanoCardano (ADA) $ 0.430336
  • solanaSolana (SOL) $ 33.91
  • dogecoinDogecoin (DOGE) $ 0.064842