JackFalcon

Members
  • Content Count

    416
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by JackFalcon

  1. Nice. Great points. I will look for maxZ. console.log -> ERROR: afalcon 10,000ft.
  2. @Wingnut ... another mentor teaches principle-of-both. It is a perspective that works well in technology and context like this. The concept of zoneCam can be helpful to many people. But as you said, hard to tell if it is relevant here. Possibly not, but still good to add to basket of ability.
  3. Yep +1, strategic trial & error on importing. Mix many prototypes... For camera-collisions -> zoneCam. Here is the concept: A FollowCam with simple limits. Dynamic Boxes of custom (flat) thresholds. 2 Examples: if(cam.position.y > 10) {cam.position.y=10}. //stay out of zone. Add interpolation on tangent and... cam no break mesh. Applicable in some cases, like landscapes. Or 2 //stay in zone... A camera that stays with a target in a pre-defined region. Adjusting to a new bounding box when target enters new zone. zoneCam. Performant solution if Cam can collide with too many objects to check.
  4. @shen In this case I put a debugger before beginAnimation() and look at the armature and animations. Usually something is wrong with the skeleton on the import... not a problem with the animation (necessarily). Sometimes it is missing too. I did find a singular glTF anomaly in export and using AssetManager. (if i recall correctly). perhaps these are different. Important. With all animations - must prove the concept first. Build animations gradually - exporting every step. see what exported and what didn't (see above) -> because you cannot export everything that you can create in blender... ... then use the blender workflow that is confirmed to export. BabylonJS does famously on the import -> and I switched back to .babylon files. you will probably have to experiment on the Blender side. Good tips above. I was able to do successfully, but it is tricky.
  5. @Deltakosh Two (separate) things: A possible edge-case in asset manager around the glTF import (above). For re-ping... on import. idk... There was a work-around... .babylon. ... i'll stop pinging. And the Animation syntax suggestion: BJSObj.animate({target:value, done:fn(){}}) With a reason... ~over-and-out
  6. Thank you for reproducing shen. glTF specification is awesomely large. Surprised if there wasn't something left over. Ping @Deltakosh for re-ping. ah, jeez. oops. Sorry - keep doing that... : )
  7. I followed TrueValhalla. Wish there were more like him. Others?
  8. What I see: 1) "Cookies" - found cookie support [https://electronjs.org/docs/api/cookies]. 2) "Jank" - no visible performance issues (electron app on laptop...) - Important: "jerky" "frame rate", jank - is possibly NOT a result of Electron but of CPU rendering. -> See GPU rendering (like WebGL)? That is guess. 3) "Riddled with Cross Platform Issues" - me too. (em's for all the things!) Good Link: http://qnimate.com/making-a-phonegap-look-like-native-app/ Better Link: https://blog.avocode.com/4-must-know-tips-for-building-cross-platform-electron-apps-f3ae9c2bffff - not pushing "rendering perf" here.
  9. The myriad choices make it difficult. So how best navigate the many choices around HTML to .EXE? The goal is reproducible app-to-market-pipeline. Which gives many surprises, for example 'dips': Relating to work from Paul Irish (matchMedia). CONTEXT: Need to sense device-width with JavaScript, for advanced Text-Animations? SOLUTION: Here are some variations on stackoverflow: var width = (window.innerWidth > 0) ? window.innerWidth : screen.width; ... if (window.matchMedia('(max-device-width: 960px)').matches) {} ... if (window.innerWidth*window.devicePixelRatio <= 960 && window.innerHeight*window.devicePixelRatio <= 640) { ... } ... for (var i = 100; !window.matchMedia('(max-device-width: ' + i + 'px)').matches; i++) {} var deviceWidth = i; ... var width = Math.max(window.screen.width, window.innerWidth); ... const mq = window.matchMedia( "(min-width: 500px)" ); if (mq.matches) { // window width is at least 500px } else { // window width is less than 500px } ... One example. Simple, but... one of many ... that is what is difficult. Beware the zombie-edge-cases! Really like Electron btw(performance issue: not-in-context). Probably going with it over Ionic, NW, Quasar, and myriad others.... Hope this helps someone.
  10. check out "Quasar"... http://quasar-framework.org/ https://github.com/quasarframework/quasar Desktop and Web, code in one place. For me solution was: port-every-time-to-make-app.
  11. ... would like to know more. Check this out... COMMON-ISSUE: Backward-Incompatibility. ~ After porting WebApp to MobileApp - backward-incompatible? https://medium.com/@ccnokes/how-to-create-a-hybrid-electron-app-53553ece0889
  12. Ok, cool. ~ I look at NW... Yeah, well look at that.... Dev-Cycle: it would be nice if web-dev and app-dev were seamless. What is this (intel webkit) how old? v0.29.1. Says 2 years before electron.. Interesting... Update: got app working in electron w/ <audio> Had this little mishap with jquery (use it for UI animations). <!-- jQuery --> <script> window.$ = window.jQuery = require("jquery"); </script> ... everything else worked. whew! Testing... I'll look at NW again if ... unexpected pitfall. : )
  13. #Goldmine: https://github.com/electron/electron-api-demos/blob/master/docs.md Porting in game assets, atm. @rothers if no performance workaround for electron, what do you see as next steps? "devDependencies": { "electron": "^1.7.10", Hey Look: Cookies! https://electronjs.org/docs/api/cookies Found in Electron Docs: https://electronjs.org/docs questions or requests for general help using Electron should be directed at the community slack channel or the forum. ~
  14. I wonder what makes it jumpy.... I'll check on my side to see if there is something similar. Still have to port the entire game. UPDATE: got the audio working (finally). Seems good! SOLUTION: include audio files at a local path, mine were ../../above electron. figured out how to do this: "include": [ "src/**/*", "audio/**/*", "../../../audio/**/*", "../../../lib/**/*" I hope these are being packaged - SOLUTION: even if they have to all be local, can be done build time. COOKIES! Found docs for electron cookies (link below). Thank you for making this thread... : ) Yes -> wrapping apps is like navigating a jungle.
  15. Why difficult to make .exe from HTML 5? ~ State of Audio beginning 2017... -> - https://medium.com/@Jeff_Duke_io/working-with-html5-audio-in-electron-645b2d2202bd ~ it is not updating the renderer... ah yes. Testing... a type in the "tsc" This looks cool, might try it: https://electronjs.org/docs/tutorial/application-packaging Heads up, looks like 3 packaging tools: electron-forge electron-builder electron-packager Also TIP: sounds like the "builder" was build onto the "packager"... "so use builder", said someone. Hope that is correct. Here is link to homepage. https://electronjs.org/ Now... where's that <audio src=''> ?
  16. @Wingnut Ha! I bet it is easy to sequence colored lights up spiral of a fibonacci curve or something like it. Color3.random();
  17. Wow, a dance floor to go with a disco ball...
  18. Got it: The prototype is wrapped in the app... and worked perfectly. Gotta say like the electron setup. Very quick, lightweight, extensible. Nice. PC difference: no Wine, on GitBash tract: improved from what it used to be. PC: DMG step is not required. UPDATE: ported in full app and.. missing AUDIO as expected. Off to tutorials... looking at this one for awhile: https://dev.to/justinctlam/building-a-3d-application-with-electron-and-babylonjs-using-typescript-2g29 Audio still not there yet...
  19. That was fast. I'll catch up.... : ) Ok, Wine...Wow, look at all these .dlls! Its like a party: wine, heap, content_shell.pak, and node.dll? Idk... ~Like+1.
  20. Hello World! We are using Node.js 8.2.1, Chromium 59.0.3071.115, and Electron 1.8.3. That was pretty nice. Thanks for the steps, they worked well. AND didn't have to "download the moon". Now to convert the game in... and see what happens with the <audio> (also touch in my case).