Kit quick start guide?

Hi,

I’ve started looking into Kit, including documentation and deep dive videos. Is there any published quick start material, for example building a simple “hello world” app?

Hello adharder,
Thank you for posting, I will send your inquiry to the proper channels for review.
Thank you for your patience.

Hi

There is quite a lot of information on how to get started to build Apps or Extensions in the dev Manual
https://docs.omniverse.nvidia.com/py/kit/index.html

this sections in the extensions ( Extensions — Omniverse Kit 100.2 documentation ) is showing the API

there is a example extensions too in the SDK that you can use are reference

omni.example.hello
that you can find in the extensions Manager

If you have not yet seen it this video show some of the core concepts

That should be a good start but please don’t hesite to reach out here for more info

Thanks

dfagnou, Thank you for the pointers. I’ll dig into that material.

As a follow up, is this tetris game an example of an extension? Developing a Tetris game with PixarUSD and Python Scripting in Omniverse Kit - YouTube

Can you talk about your plans for supporting interactivity? For example can I deploy an interactive application from Omniverse?

I felt very frustrated after reading these pages. These really can’t be called tutorials. I still don’t know how to start. Copy the omni.example.hello folder and edit it in Notepad and then run it in the terminal? ?

Sorry to hear the docs is not clear enough.

so you read this:
https://docs.omniverse.nvidia.com/py/kit/docs/guide/extensions.html#what-is-an-extension

and it was not clear ?

It define how to launch an extensions and how to set it up, we will review and see if we can augment that

let me define here

kit.exe --empty --enable epw.my_cool_ext << would run empty and launch your extensions

but depanding what type of extension you plan to build there are other workflow

can you descripbe what are you planning for your extension I will give a good examples on how to set that up here

Thanks

I hope the OP doesnt mind me chiming in here, but this part of OV is really thin, in terms of guidance.

I’d like to see an Hello World sample, where it has a text editor on the screen with the text ‘Hello World’. This would give some context to getting started creating our own OV apps.

From there, I’d like a sample that shows how to create UI in an extension. So, with my Hello World app from above, I’d create a UI extension that adds a button to my Hello World app, when the UI extension is loaded.

So, I think, even with these basic samples, the OV community itself could start creating more extension content.

(If the USD Stage is a native part of OV, and has to be in an OV app, that’s fine - I was just trying to keep the App extension sample as simple as possible)

omni.tetris.zip (944.4 KB)

Hi adharder,

Here is the tetris extension. Just drop it into the /exts directory in create, and then you should be able to load it from the extension manager window. All the source code is there, for your perusal.

Excellent, thanks!

Does this help understanding how a basic extension could be created for Omniverse?

I take a simple collision simulation problem as my study example. I want to build an application that can import two meshes (stem vs. femoral canal) and simulate how they match each other under the gravity. The final state of the simulation is very meaningful for surgical guidance.

It is very easy to create simulation in Create and the effect is amazing, but I still need to develop some additional functions such as model editing, coordinate system, data export, etc., by using either python or C++.

The most confusing point for me is this command line startup method. If I want to package it to other people, I have to copy the extension folder. I think this method is a bit strange, and it is not user-friendly to non-developer users. Maybe this is just an early feature. You confirmed this for me, thank you for your explanation.

This is really great, glad to see you exploring the power of extensions. Your feedback is appreciated.

Extensions are a lot more than a single file , as you build up your amazing work you will have many files, icons, data file , docs etc you need a place to keep all those togeher and organize , that is where extensions are really useful.

the next version we have a Button to export extensions as a zip file and for your collegue or tested to simply import that verison of your extensions into their system

you can benefit from versioning and also you can have extensions dependency and break your work into modular componenents

doing a single file with command line argulment might look convinent for something very simple but it doesn’t scale well
also with extensions you can “hot reload” your changes so you never need to relaunch the application , your code reload constantly as you save making it super fast to iterate .

Let us know when you have tried it and if you have issue but I am convince that you will really enjoy that new way !

great idea of a project lookign forward more video !