Forum Replies Created
- 
		AuthorPosts
 - 
		
			
				
If you’re worried about the licensing, you can redistribute monkey2/mojo stuff, subject to zlib:
It’s summarised here: https://github.com/blitz-research/monkey2/blob/develop/LICENSE.TXT
What were the graphical errors in “Bust”?
Yeah, no text to headset, though I suppose that could be worked around.
I think there are only a few people here with VR headsets, so not too surprising! I haven’t done picking up myself…
I did put some demos in the code section, but they’ll probably need a bit of tweaking in order to work now, and I don’t use the physics toolkit any more, as Mark came up with a much simpler solution with Components, but it has a little VR demo, hence the inclusion here.
Rift Touches do work perfectly!
That was a bug which was fixed, so you might want to try the develop branch, or (if not into the self-build thing), download the develop zip (select develop branch, hit Clone or Download, then Download ZIP) and try replacing your existing mojo3d-vr module (I would back up existing mx2 first). Note that you need to install the SteamVR bits* mentioned on the page:
https://github.com/blitz-research/monkey2/tree/develop/modules/mojo3d-vr
[EDIT: * Actually, you’ve probably done that or wouldn’t even have the upside-down view!)
With black ambient light and no lights in the scene, all you’ll be able to see is specular reflections
Hmm, I’ve done AmbientLight = 0 and all other lights 0, to no avail. Will try again… and do the specular thing too…
Got 2-5 FPS on Chrome, Firefox, and Native. Native also seems to have some big problems with the rendering causing a whole bunch of tearing and extreme noise. Looks like it could be a fun demo/game if I could only play it!
Does bananas/toy-plane work? If not, I would suggest a bug report, with as much detail as possible (inc gfx card spec and screenshots); if it does run OK, I’ve no idea, unfortunately, as this thing doesn’t use anything beyond the basic 3D engine!
That said, I do occasionally get a weird situation where any Monkey2 app (including Ted) runs at like 5 FPS until I reboot, while other stuff runs OK, so I’m wondering if there’s some weird bug with drivers and SDL2/Angle (or whatever MX2 is using now). That said (again), I’m on Nvidia, so probably not a driver thing.
Thanks for having a look, hope it’s better for you on Windows!
Interesting that you don’t get the glitching on WebGL…
Further to last update, latest version adds the beginnings of a reason to exist — collect the gems!
Land on pads to refuel. Find the mysterious Shadow Gem! Can land on terrain at low speed. Lots of tweaking done (and to-do). Gems don’t currently respawn.
Basic ‘gameplay’ for this thing will simply be collect the gems, pick up the orb (which is still currently spawnable) and head for the stars. Game Over.
Still got my problem with not being able to detect when I’m no longer colliding with an object (eg. lifting off pad). Also, is there a way to use Colliders without a RigidBody, just to detect collisions (no response)?
Windows 64-bit executable (Have an Xbox controller plugged-in before running.)
Source code (Still to be massively re-arranged and cleaned up!)
Oh, Normalize just made my explosions way better! See what you mean now. I’ve dabbled with it, but when you said it makes things spherical, that was exactly what I needed…
[/crayon]Monkey12345[crayon-5cba97fd5e337540834304 inline="true" ]power = 5.0ptri.body.ApplyImpulse (body.LinearVelocity + (model.Basis * New Vec3f (Rnd (-1.0, 1.0), Rnd (-1.0, 1.0), Rnd (-1.0, 1.0))).Normalize () * power)I only have the loosest grasp of what I’m doing here, but it’s fun seeing it work anyway!
Couple of other things I’ve just remembered:
* I couldn’t figure out how to make it night-time… as in, I set all lights to zero/Color.Black or disabled, AmbientLight to 0, scene ClearColor to 0, but my terrain was still all lit-up like daylight. (Excuse any mis-remembered light/colour refs here.)
* I added a light to my orb, but had to settle for a Spotlight attached to it, pointing down — looks pretty cool when you’re looking for it (particularly after crashes, where it separates and lights up the terrain like a falling torch), but I actually intended a PointLight, which I think is the only one left unimplemented. Think this would look cool as it swings by terrain. (Messing with this is what lead to the attempted night-time scene.)
Think I had more, but gone blank for now.
(I can’t stress enough that the Win64-with-Xbox pad version is way cooler than the web version!)
Literally just finished for the night, but done loads this evening (not that all of it is visible)…
I suspect for max speed for the explosion fragments, you’re probably best manually updating a single model’s vertexbuffer instead of using a Model instance for each triangle
Probably a bit out of my league for now! (Edit: besides, I want them to interact physically with the terrain! I’m considering HTML5 to be just for quick demo purposes, with PC as primary target.)
The rocket trail definitely isn’t doing anything clever yet, so I’ll look at your suggestion there… I’m not seeing the stickiness you are, though! It’s meant to be blocky smoke interacting with the ground, but the spawning/spread definitely needs work…
Anyway, tonight’s update includes:
* Fuel limit!
* Audio! Includes boost, low-fuel alarm and explosion!
* And, on Windows-64-with-Xbox-pad… analogue gamepad control! (Not in web version, highly recommend trying it on desktop.)Recommended:
Windows 64-bit executable (Have an Xbox controller plugged-in for analogue control! Xbox 360 wired and Xbox One wireless tested.)
Analogue Xbox-pad controls: Left-stick, right trigger. Start resets.
Couple of things I’m struggling with:
* Collision with terrain isn’t always detected right away — entity.Collided (Class Rocket) appears not always to trigger, yet the rocket can sometimes be seen to collide and bounce off the ground; next time it hits it usually explodes. In theory, should just explode on contact every single time. Not sure what this is, since update rate appears not to be the problem, given it bounces, even if it doesn’t explode…
* In relation to entity.Collided, I’m trying to figure out how to determine that I’m not colliding with an object (any more)! Specifically, the rocket.landed result that shows in the display text — hitting a landing pad changes landed to True, but I can’t find any way to clear this back to False after taking off from the pad. (If I set it to False every frame, then it’ll be re-detected every frame — I want to trigger a landing sound once, which is what this variable is for. Trickier than it seems… )
* I wondered if entity.Collided ought to be RigidBody.Collided, feels a bit odd to me, seems like RigidBody should be what collides!
I really need to get in and tidy/separate out my source now, though…
That would be awesome, will save a lot of scrolling around and losing concentration, many thanks!
OK, this is a pretty flucking cool update if you ask me!
I’ve added a rocket model from Google Poly (licensed under CC-BY, ie. freely-distributable, ie. Banana-able eventually) and done a load of fixing to account for its multiple materials, which means that when it ploughs into the terrain it looks fer-hucking beautiful on desktop/decent PC!
However, explosions are unsurprisingly slow as hell on WebGL, so it skips every 3 triangles… and is still slow as hell*:
I highly recommend downloading and building the source for desktop** in order to get the full explosion experience!
It’s only when the full 100% triangle explosion occurs that you can really appreciate it… the WebGL version undersells it considerably!
Massive tidy up next, I think…
* Have since disabled shadows for explosion triangles on WebGL, makes quite a speed difference here. (Not yet in source zip.)
** NB. I use the Github development release.Another little feature request if you get time!
When Ted jumps to another part of the code, eg. due to syntax error or the debugger kicking in, could it provide a link back to where you were before the jump?
Eg. If I’m working on line 02 and run the code below, it will jump to show the error on line 18. What I would like is an unintrusive button of some kind that would take me back to line 02 if I click on it.
[/crayon]Monkey1234567891011121314151617181920212223[crayon-5cba97fd6ac57597321314 inline="true" ]0102 Print "Hello world"03040506070809101112131415161718 Prunt "Goodbye world"1920Yep, updated/uploaded and shadows look good now, thanks!
Regarding doing something like ShaderFrog, do you mean web-based MX2 coding? I did that for MX1*, and it worked really well, but of course that generated JS code directly within a fraction of a second, whereas MX2 would impose a huge load on a server, what with all the C++ building and Emscripten conversion (especially as soon as just a couple of users are running code at the same time). Not sure how well it would work really!
* Front-end here, back end server no longer present. (The ‘static’ while building is an MX1 app though!)
Hacked explosions in on contact with terrain, thanks to recent fix:
Seems to be a weird shadow error on Emscripten at the moment…
Explosions look slightly weird as the cone model turns out to be built from ‘shards’, which I hadn’t expected (as much sense as it obviously makes), but basically work nicely here, spraying out in the direction of travel.
Messy source is on same link as previously.
 - 
		AuthorPosts