Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Varmeta's Unity SDK Journey #43

Open
AnhVAR opened this issue Oct 16, 2023 · 13 comments
Open

Varmeta's Unity SDK Journey #43

AnhVAR opened this issue Oct 16, 2023 · 13 comments

Comments

@AnhVAR
Copy link

AnhVAR commented Oct 16, 2023

Introduction:

Varmeta was founded in 2020 with a focus on blockchain and virtual reality/augmented reality technologies. Starting with only three members, we now have 40 engineers who are highly skilled tech experts, driven by determination, enthusiasm, and commitment to providing cutting-edge technology services.

We aim to contribute to the ecosystem of emerging blockchains, addressing lingering issues in traditional ones. We believe that the design philosophy for Gnoland developers has the potential to make it one of the most widely adopted smart contract platforms globally, and we are committed to supporting this initiative by providing various applications for its ecosystem.

Meet our team members:
Anh Nguyen - Solution Architecture: www.linkedin.com/in/anh-nguyen-pham-hung
Quoc Bao - Unity Developer: https://www.linkedin.com/in/qu%E1%BB%91c-b%E1%BA%A3o-813359155
Pham Dat - Unity Developer:

Gno.land Unity SDK

Our primary motivation is to bridge the gap between blockchain technology and game developers. Unity is a widely used game development platform, and by providing a Unity SDK for Gno.land, we aim to streamline the integration of Gno.land's blockchain technology into Unity-based games and applications.

We envision this SDK to empower the Unity developers to leverage the strengths of Gno.land blockchain such as the simplified smart contract programming in Gnolang, the Proof of Contribution consensus mechanism, and the potential for long-term sustainability.

We also want to emphasize that this SDK will be built on the .NET Framework. This means that all applications written in C# .NET can potentially utilize this SDK.

.NET is one of the most popular application development platforms today. Ensuring SDK compatibility with .NET expands our reach, not just within the Unity game development community, but also to the broader community of .NET developers.

This also paves the way for integrating Gno.land's blockchain technology into a variety of other applications and services, not just limited to games but also extending to various other applications such as enterprise applications, web applications and beyond.

Through this expanded influence, we hope to promote widespread adoption and use of blockchain technology, thereby helping to enhance transparency and accountability across industries and processes.

Timeline

Start date: 2023/10/23
First release for core sdk in .net C#: 2024/01/23
Full release for unity sdk: 2024/03/01

Potential Challenges

Technical Challenges: Developing an SDK that works seamlessly with both Unity and Gnolang could present some technical hurdles. We need to ensure that the SDK is easy to use for Unity developers, while also maintaining the integrity and security of the Gno.land blockchain.

Compatibility Issues: Ensuring compatibility with all versions of Unity and various operating systems could prove to be challenging.

Adoption and Education: Once the SDK is developed, a significant challenge will be promoting its adoption among Unity developers. This will require comprehensive documentation, educational resources, and possibly community engagement efforts to encourage developers to start using the SDK.

Please follow this to check all the update from our progress.

Related with gnolang/ecosystem-fund-grants#10

@AnhVAR
Copy link
Author

AnhVAR commented Oct 30, 2023

Weekly Report on the Gno Unity SDK Project
In the past week, our team has been conducting research into the solutions that Gno is currently offering. During this process, we realized that Gno is in a stage of active development, showing a lot of potential and anticipating many changes in the future. Hence, we believe that it is necessary to design an SDK that can accommodate this flexibility and the changes that will occur when Gno goes live on the mainnet.

Our solution is to utilize the Tendermint2 library, which is part of Gno. We will create a wrapper to export APIs from Go to the C library using Cgo. This will enable us to run Tendermint2 on various platforms, including Windows, Linux, and MacOS, with the C library.

From this communication, we will develop features such as account management, keys, transactions, and more on .NET by calling C functions from the wrapped library.

In Unity, we will create user interfaces for wallet and NFT features. These will serve as easy-to-understand samples for developers on how to use our SDK.

This strategy not only ensures the scalability of our solution in line with Gno's development but also provides efficient and versatile tools that developers can easily integrate into their projects. We look forward to continuing our research and development in order to provide the best possible SDK for Gno.
Blank diagram

@AnhVAR
Copy link
Author

AnhVAR commented Nov 6, 2023

Over the past week, our team has achieved significant progress in the development of the GNO Unity SDK. We successfully created a new repository and demonstrated the effectiveness of our solution. Notably, we have managed to generate keys, add addresses, and list addresses on Gno by leveraging a C library to communicate with tm2. You can view our work on the GitHub repository at Gno-Unity-SDK.

As we move forward, we anticipate continuing the development of Gno's fundamental features in the upcoming week. Our primary goal is to ensure their operational capacity in both .net and Unity environments. We look forward to sharing more updates on our progress soon.

@michelleellen
Copy link

Hey @AnhVAR would love to have you join our regular developer call and introduce Varmeta, plus some teams are interested in learning more about the project. How can we get in touch?

@ltzmaxwell
Copy link

Very interesting, I am curious, in the context of VR, which businesses are directly related to blockchain and interact with the blockchain through transactions? Could you give a few examples, thank you.

@AnhVAR
Copy link
Author

AnhVAR commented Nov 8, 2023

Hey @AnhVAR would love to have you join our regular developer call and introduce Varmeta, plus some teams are interested in learning more about the project. How can we get in touch?

Contact me by email anhnguyen@var-meta.com

@AnhVAR
Copy link
Author

AnhVAR commented Nov 8, 2023

Very interesting, I am curious, in the context of VR, which businesses are directly related to blockchain and interact with the blockchain through transactions? Could you give a few examples, thank you.

Here are a few examples:

Virtual Real Estate: Platforms like Decentraland and Cryptovoxels allow users to buy, sell, and trade virtual land parcels as NFTs on the blockchain. Users can build and monetize virtual experiences on their land.

Gaming: Virtual reality games like Somnium Space are integrating blockchain to allow players to own, trade, and sell game assets as NFTs. These assets can include anything from in-game currency, items, characters, to land.

Art and Music: Artists and musicians are using blockchain to mint their digital artworks and music as NFTs, which can be displayed or performed in virtual galleries or concerts. Platforms like SuperRare and VRChat are examples where such interactions happen.

Education and Training: VR platforms for education or corporate training could use blockchain for issuing certificates or badges, which can be verified independently on the blockchain.

Virtual Retail: Virtual stores in VR can use blockchain for transactions. Customers can buy virtual goods using cryptocurrency, and these purchases can be recorded on the blockchain.

Social Media: VR social platforms like VRChat and High Fidelity can use blockchain to create a virtual economy where users can trade goods and services.

These are just a few examples, and as both VR and blockchain technologies continue to evolve, i think we can see even more innovative applications in the future.

@AnhVAR
Copy link
Author

AnhVAR commented Nov 22, 2023

Last week, we make new project for UnitySample and using SDK to make sure Unity editor and application can work with SKD. Here is our sample UI and real data after call SDK
Screenshot 2023-11-22 at 21 11 10
We will continue update new feature for SDK and make UI sample to easy understand what we work.

@AnhVAR
Copy link
Author

AnhVAR commented Nov 30, 2023

Gno Unity SDK Project Weekly Update

Last Week
Last week, we started setting up and writing APIs to connect with the testnet. This lets us get account address current balance, which is a big step in our project.

This Week
This week, we'll finish setting up the testnet connection.

We're also bringing more people to our team. This should help us build faster and make our Unity user interface (UI) better.

So, we're making good progress on the Gno Unity SDK project, but there's still a lot to do. We're excited about what's next and will keep you updated.

@AnhVAR
Copy link
Author

AnhVAR commented Nov 30, 2023

We are developing UI on figma for our Unity example here: https://www.figma.com/file/JMUeKEJt5ym9HUTUfW16xf/UI-GNO-UNITU-SDK?type=design&mode=design
Screenshot 2023-11-30 at 16 39 46

@AnhVAR
Copy link
Author

AnhVAR commented Dec 6, 2023

Gno Unity SDK Project Weekly Update

Last Week
Last week, we implement new UI for Wallet on Unity.

Screen.Recording.2023-12-05.at.11.20.05.AM.mp4

This Week
This week, we will use gnoclient https://github.com/moul/gno/tree/dev/moul/gnoclient/gno.land/pkg/gnoclient and remake c api for that module.

@AnhVAR
Copy link
Author

AnhVAR commented Dec 6, 2023

@michelleellen @moul Please help us review comparing with GnoMobile.
Unity SDK update.pdf

@AnhVAR
Copy link
Author

AnhVAR commented Dec 13, 2023

Gno Unity SDK Project Weekly Update
We already updated our solution to new architecture to reuse maximum previous source code from gnoclient and gnomobile.
SDK - Page 1
All api from gnoclient and gnomobile are converted to cgo api. We can direct call that api from Unity, other engines and program languages.

https://github.com/AnhVAR/Gno-Unity-SDK

Our simple test result:
Screenshot 2023-12-13 at 14 02 57

@AnhVAR
Copy link
Author

AnhVAR commented Feb 21, 2024

Gno Unity SDK Project Weekly Update
Add Send api to send ugnot to other address
Screenshot 2024-02-21 at 14 46 05

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants