Advertisement
Guest User

Untitled

a guest
Dec 11th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.99 KB | None | 0 0
  1. Falco GirgisYesterday at 8:06 PM
  2. @cykboy damn that was fast.
  3. okay, so here's the thing.
  4. You won't get libGyro to build. The idea is not to build the libGyro PC build or whatever. It's to implement a web back-end. The *_api.h" headers are all of the generic API functions, then you'll notice within source there's /x86, /dc, /sdl, etc for all of the different back-ends. The idea is to create a /web and implement the C functions provided by the API.
  5. BUT BUT BUT
  6. It's not that complex. EVMU BARELY uses anything at all. Just the WAV API (one play function), file API, and input API mostly.
  7. very very simple ones. You only have a few functions you'd have to implement to get enough libGyro up for EVMU web.
  8. But that's the libGyro paradigm. Then also once more functions are implemented, anyone using libGyro (including Elysian Shadows itself), will automatically support whichever platform.
  9. It's less daunting than it looks for EVMU, though, because it's very simple and doesn't use anywhere remotely near the amount of API from libGyro as like the engine does.
  10. So what i would do
  11. Is create a /web/* and then try to build, and for every "undefined symbol" from evmu-core accessing libGyro, just add an empty function.
  12. and slowly start filling it in
  13. shit like audio obviously can come at the very very end.
  14. Video isn't even using libGyro. It's extremely easy.
  15. Just somewhere in your web code, create a render function that simply loops for each each pixel on the screen and uses the gyro_vmu_display.h api
  16. like this:
  17. for(unsigned y = 0; y < VMU_DISP_PIXEL_HEIGHT; ++y) {
  18. for(unsigned x = 0; x < VMU_DISP_PIXE_WIDTH; ++x) {
  19. if(gyVmuDisplayPixelGet(device, x, y)) //draw a black square (pixel is ON)
  20. else //white/blank (pixel is OFF)
  21. }
  22. }
  23. @cykboy does that make sense?
  24. very very easy to do video and that's the main part.
  25. and then from your actual APP, set it up like this:
  26. 1) Create VMUDevice
  27. 2) Every frame call gyVmuDeviceUpdate() and pass it the frame delta time
  28. 3) every frame call your draw function
  29. 4) destroy device when you're done
  30. and that's literally basically it for the app layer/UI client
  31. I have a feeling this is something that would lend itself EXTREMELY well to the whole native web thing, and also all of the more advanced shit, like decoding the files on the filesystem, showing their properties, decoding/ripping their images and all that... that's included in the CORE layer, not the Qt layer, so you have access to all of that too. You could very, very easily for the web implementation also make it a filesystem manager like I'm doing natively with Qt, instead of only a GAME mode emulator.
  32. and then do that, add the ability to create user accounts and load/download save files, and then give me a web API to interop with the EVMU app, and you have built the VMU-in-the-cloud server I want so fucking badly, and then we win, and we rule the world.
  33. Our entire VMU infrastructure would be unstoppable.
  34. every base covered.
  35. VMU everywhere.
  36. ALL THE PLATFORMS, UBIQUITOUS VMU COMPUTING
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement