From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

[Game] Could this can be written using LabVIEW??

Hi LabVIEW Community,

 

This came to my mind today. I've recently saw a bunch of examples manipulating Object,Textures,light,meshes,shadow,rotation....etc (OpenGL?), and this, combined with plenty of math functions and inherently parallel programming can be used to "unusual application" using G. For me, LabVIEW is much more than one Programming Language Smiley Very Happy

 

I got two project's recently, but i want a third 'fun' one (Just to spend my time with something useful instead procrastinating on facebook/games Smiley Very Happy). I'm wondering if the 3D Picture Control could be used to write a REAL game? For example, on Client, load simple sprites on 2D/3D scene, the game physics and everything related into game experience (User Interface for example). On Server side, deal with players account management, connection handle (TCP), scriptable elements (Using LUA) , game mechanics and so on. My idea seems one medium~big project... So, the AF is the best choice?

 

I hope some detailed answers and i apologize if something was 'miswritten' here (I'm not native or good english speaker).

 

Thanks for your attention.

-------------------------------------------------------------------------------------------
"In theory, theory and practice are the same. In practice, they’re not."

0 Kudos
Message 1 of 5
(1,579 Views)

Some links to that game would help...

 

Can it be done in LabVIEW? Yes.

 

Can we make it in LabVIEW? That's hard to say without all the details (of the game and of you and of me).

 


@muhammadblibla wrote:

So, the AF is the best choice?


Not for me, but others seem to like it.

 

It's hard to give detailed answers without detailed questions. General questions result in general answers...

0 Kudos
Message 2 of 5
(1,553 Views)

Hi muhammadblibla,

 

I've played with similar kinds of ideas with the LabVIEW NXG Web Module. They are very much early proof of concepts but they show off the power of being able to leverage existing JavaScript libraries with WebVIs. The online demos can be found on my webvi-experiments page.

 

A couple of interesting ones are the VirtualReality demo and the HardwareDashboard demo which show manipulating objects in a 3D scene to change properties and position. There are also some pretty simple games (not 3d) in the Arcade section of the webvi-experiments page.

 

A neat thing about using WebVIs is that a user can start playing without installing any plugins and it runs on Desktop and Mobile. You can also upload the WebVIs to SystemLink Cloud and leverage the data services for network play. Alternatively you can upload WebVIs to services that take Web Applications like Facebook Instant Games or game sites like itch.io. Uploading to itch.io was pretty straight forward, you can see a demo here: https://rajsite.itch.io/fire

 


Milan
Message 3 of 5
(1,487 Views)

@Milan

"No need to install anything" is a use case, but on the other side of the spectrum is "I want to install something, and run it offline".

 

How feasible would it be to port\hack the vireo engine so we can make stand alone applications? Last time I checked it's open source. I'd prefer a native vireo engine over a JS one, but I'm sure there's a small (open source) web browser that will run it. It might not be that hard to create .apk packages or Windows applications with NXG.

0 Kudos
Message 4 of 5
(1,448 Views)

Hi wiebe@CARYA, 

 

There are several technologies for making standard Web Applications (ie a built WebVI) available offline. There are trade-offs between each of them in terms of features you have access to, supported platforms, desktop vs mobile etc.

 

For both desktop and mobile a cross-platform solution is to package an application as a Progressive Web Application (PWA). The workflow for a PWA is that your Web Application is hosted online then the user visits the Web Application as a normal website and is given the option to install it. Once installed the PWA behaves like a desktop application. It gets an icon on the desktop and when launched opens in its own window instead of as a browser tab.

 

The PWA site on web.dev gives more information about the technology. Microsoft also has a tool called PWABuilder which may be helpful for learning more. The PWABuilder also helps you put together packages to make the PWA available in the Android store, in the Windows store, and as a MacOS desktop application (I'm not sure about Apple App store for iOS).

 

Another option that is specific for desktop applications is to use the electron project to run a Web Application. This is a similar approach to what is used by tools such as Visual Studio Code, Microsoft Teams, and Slack. Some benefits of an electron based application are that you get access to some lower-level apis and can potentially even call native libraries with the cost of bundling a browser as part of your application.


Milan
Message 5 of 5
(1,416 Views)