All Activity

This stream auto-updates   

  1. Past hour
  2. @Rolento: some more info about using MeshLab. Here is an example that was created using MeshLab : The Three Guys that I created when I first started to experiment with BJS (almost 3 years ago). The models came from here: Lincoln 3D Scans and are all very hipoly - the bust of Einstein alone has 355,000 verts, 710,000 triangles before decimation. (Scroll down the page to find them, all in one row.) I followed the methods outlined in this video Decimating Sculpts with MeshLab A couple of other thoughts for you 1. The Blender exporter if it finds a huge mesh will split it.into pieces - but you have no control on that. 2. If your large mesh has sufficient multiple materials - it maybe possible to split the mesh by material before export. cheers, gryff
  3. Thanks, I have corrected that in demo. Will get it into the documentation (also have another problem in Docs (I get this contents thing, which is ok, but all my headings are gone. Why? Maybe @Temechon, or @Deltakosh) As far as ASTC encoding, you need to actually get a drop-in from ARM. I did mention to look at section 1.2.1 of PVRTexTool documentation, but probably should have put the link to manual and astcenc.exe. Basically, the program needs to be downloaded and put on the path. Remember, ASTC is not yet exposed on iOS yet, or anywhere else yet AFAIKT.
  4. BABYLON.Animation instances maintain state. Running them on multiple meshes, as you have seen, does not work. The keys are what takes up all the space though. The array, you call moveKeys, is highly likely to work in multiple meshes
  5. Hi, I am not sure I get what you are trying to do. In each run of the for loop, you add further keys to the animation, and then you push the same object to the player in a specific index. You also don't reset the array, you simply add further objects. when you "setKeys" again, you "remove" the old keys, and then set the new ones. And, as far as I know (and this is probably the answer to the entire question) - animations cannot be shares between objects. Animation keys can be shared between animation objects, if you want to reuse. But you need an animation object per mesh.
  6. Well, some mobiles are simply too slow for VR. Try eliminating the lens distortion, this will increase FPS. also try playing with the hardware scaling factor, so that the single screen resolution will be a bit lower. Try getting to 30-40 fps (of course, 60 would be nice, but hey, we can'T always get what we want)
  7. Today
  8. Firefox 50.1.0, Win7 – links on your website are unclickable (however, can be opened via right-click menu). Nice productivity through.
  9. I created the sounds and music for "Chopping Jack" - a new iOS arcade game: http://dreikelvin.nl/portfolio/chopping-jack/
  10. thanks iiceman, i will study the code now
  11. Hello, Maybe something like this (http://www.babylonjs-playground.com/#YRIPX#19) could help. I did this a while ago, it can be useful to make it cleaner
  12. I just wanted to add that you can find games from me (Enclave Games) on the BlackMoon Design website too - both as a showcase of our work together and as a licensing offer through Robert. Feel free to ping him for details if you're interested.
  13. Here's a small quick, silly game I've made (together with my daughter) during the Global Game Jam last weekend. It's the first time I've used Construct2 and I have to say it works really nicely (good thing I had @elparole nearby though;) Anyway - check out the "Magical Kawaii Cyborg Girl" [PC only] - http://jamgames.blackmoondev.com/kawaiicyborggirl/
  14. Hi We make LOTS of games - so I figured out it's better to have a single post I could update every time we publish a new game rather than post info about the games in separate posts. Atm. the BlackMoon Design team (consist of 2 full-time developers, 2 part-time developers and 2 graphic designers) made roughly 80 games. You can check them all here - http://m.blackmoondev.com All feedback is welcome:)
  15. Thanks for both your suggestions! Turns out that there's difference between 2d canvas and 3d canvas, I can't draw image the simple way like I did for 2d canvas. ^^" End up I just put a background canvas behind babylon canvas to show the background always like Wingnut suggested in the first post.
  16. It is a very interesting discussion, but since I wasn't around when it started (and I am terribly sorry for reviving it) I am not in place to actually answer it, Having said that - to be able to edit the documentation is not even to know git. it is to have a github account and use their online editor. This is more than enough. To edit a page : 1) log in to github 2) choose the page you want to edit (which can be searched for in github's search) 3) edit the page and press "propose change" 4) ??? 5) PR Merged, profit! Github has an online editor, github handles merges, branches, and all that fun. It even shows you a preview of your changes! Other than live wiki editing (which won't be integrated any time soon), I don't see how it can be simpler. So, what are you waiting for?
  17. Hi the discussion has been started here: Thank you, @Nabroski , for your nice example which shows difference between two camera types: http://math.hws.edu/graphicsbook/demos/c7/rotators.html I am sure that TrackballCamera can be very usefull for people who is developing on line systems for engineers. Just take a look at Autodesk viewer and the camera: https://a360.autodesk.com/viewer/ Is there any plans to create TrackballCamera to Babylon JS?
  18. Well, a silly demo, but - http://www.babylonjs-playground.com/#3PCLR
  19. You're not the first struggling with tile id's for collision. I set collision settings per tile in Tiled editor and update collision after loading the layers. You can select multiple tiles at once and set properties. I think this nicely wrapped as something like "implementTileProperties(layer)" would be a nice addition to Phaser 3 @rich . This is taken directly from something I work on. I load the tilemap into "map" and the "layer" variable holds the layer I want to check for collision on. This imports all kind of properties (like alpha or whatever) so be careful or limit it to what you're interested in. "map.calculateFaces(1)" might need an explaination. It's an internal function to calculate "interesting faces" and the number 1 is the index for the layer on the map. You can check what index you have with a loop over "i" of "map.layers.name === layer.name" and calculate faces for matching i, or just do it for all layers (if it's in the create method it shouldn't be an performance issue). for (let y = 0; y < layer.layer.data.length; y++) { for (let x = 0; x < layer.layer.data[y].length; x++) { let tile = layer.layer.data[y][x]; if (tile.index === -1) { continue; } for (let property of Object.keys(tile.properties)) { if (tile.hasOwnProperty(property)) { tile[property] = tile.properties[property]; } } if (tile.properties.collide) { for (let property of ["collideUp", "collideRight", "collideDown", "collideLeft"]) { tile[property] = true; } } } } map.calculateFaces(1); edit: An alternative method is to loop through "game.cache._cache.tilemap.map.data.tilesets[0].tileproperties" (if the map is loaded as "map" and you're interesting in the first tileset) and use Phaser API to update tiles with matching gids/ids. If I remember right the Tiled set the first tile gid to 1 while Phaser set it to 0 which can cause som confusion.
  20. Hi Guys, a note about the physics part - I didn't quite understand what the problem is. Is it: 1) Sometimes the event doesn't trigger? or 2) The event is triggered too often, even when the sphere is not jumping anymore? Whether 1 or 2, the answer is kind'a the same - the physics engine is responsible for this. we are just a proxy. Having said that - if it is 1 - I would be very happy to see that reproduced! if it is 2 - The sphere doesn't stop. it keeps on jumping we are talking about very very low values, but it simply colliding with the ground constantly. You could check if the velocity is smaller than a predefined alpha, and not change the color. Or reset the velocity and it will stop jumping.
  21. Hello i try to run 5 animations on 5 diffrent models but i have an error: Uncaught TypeError: Cannot read property 'frame' of undefined at i._interpolate (babylon.js:18) at i.animate (babylon.js:19) at e._animate (babylon.js:19) at i._animate (babylon.js:12) at i.render (babylon.js:12) at main.js:33 at n._renderLoop (babylon.js:4) My code is very silmpy function CreateAnimation(index) { var moveAnimation = new BABYLON.Animation("moveAnimation", "position", 30, BABYLON.Animation.ANIMATIONTYPE_VECTOR3, BABYLON.Animation.ANIMATIONLOOPMODE_CYCLE); //tworzenie animacji przemieszczania sie var moveKeys = []; var moveLenght = 0; console.log(checkpointsPositions[index].length +"checkpoints lenght"); for(var i = 0 ; i < checkpointsPositions[index].length ; i++) { //.toFixed(0) moveKeys.push({ frame: (jsonObjectResults.points[licznik].time)*30, value: (checkpointsPositions[index][i].position) }); console.log(checkpointsPositions[index][i].position + " +++ " + (jsonObjectResults.points[licznik].time).toFixed(0)*30); console.log("Licznik " + licznik); moveLenght++; licznik++; } licznik++; moveAnimation.setKeys(moveKeys); players[index].animations.push(moveAnimation); scene.beginAnimation(players[index], 0, jsonObjectResults.points[licznik-2].time*30, true); } I start the code by createAnimation(index of mesh) and when i run it once it works but when i run it more than one it doesnt work
  22. Sorry no one is able to comment on your post. I am also trying to understand how functions like 'applyImpulse' are used. Maybe everyone has dumped P2 for Box?
  23. Hey all, I'm trying to filter an entire group, but I can't seem to succeed, where applying that same filter to a sprite instantly works. I'm working on my first Typescript project and I like it a lot! I have a MainGame class (mainGame.ts) which extends Phaser.State and I have a Container class (container.ts) which extends Phaser.Group When I apply a filter to a sprite that I simply added like: this.body = this.add.sprite(0, 0, 'bgBase'); this.body.filters = [ new Phaser.Filter.BlurY(this.game, null,'') ]; the blur filter is applied. Now when I try to apply the filter to a container which contains Sprites, like: this.container = new Container(this.game); this.container.filters = [ new Phaser.Filter.BlurY(this.game, null,'') ]; does NOT work. But when I apply the filter directly to a Sprite inside the container, like: this.container.someSprite.filters = [ new Phaser.Filter.BlurY(this.game, null,'') ]; the filter is applied as expected. I must be overlooking something important for how I create or add the group, but I keep missing it. I hope somebody has an idea about where to look. Help will be much appreciated!
  24. I like your personality and wit. You are funny. And... yes... you are correct, so far. It is VERY difficult to impulse to exact coordinates (essentially impossible without brute force). You are likely correct about 0-1 values - thanks for that info. I write tutorials, sometimes (even in the forum). MANY times, I am DESPERATE for a term... to use for... "a value 0-1 inclusive". There's been huge discussions on the web... trying to determine a proper term for that. Strange, just like this issue. It looks like UnitInterval is the most-proper term. If I use that term in a tutorial, everyone will say "What the hell is a UnitInterval?" I think I have seen others call it a "normalized value", too. (equally tutorial-unfriendly) I've sent a message to the VERY busy BJS superstar named RaananW... asking if he would give us some advice. SO... maybe we have help coming. Others may comment, too, of course. And, we can do more tests, yet. Thanks for sharing your testing results, Hans! Nice of you. I have briefed RaananW a bit... on the issue. Physics bodies have .position, too. POSSIBLY, we might make our own updatePhysicsBodyPosition... by continuously setting redbox.physicsImpostor.position = new CANNON.Vec3(redbox.position.x, redbox.position.y, redbox.position.z)... in the renderLoop. Scary and demented, huh? Brute-force positioning of an impostor... against every physics rule in the book. Something to play-with, perhaps. Wear your hard hat and steel-toed boots, okay? UPDATE: Raanan agreed about the need to move red platform... using a physics motion method (impulse or setLinearVelocity). He also mentioned that he MIGHT have another playground for us... later. But... we need to find a work-around. We can't load cargo containers onto our ship, and then the ship sails away from the dock, and the cargo falls into the water. (nah, we would impulse the ship away from the docks, right?) Is this for a conveyor belt system? Rollercoaster? hmm. This sort of sucks. It is almost like we need to build invisible "guides" under the platform, then impulse the platform on one axis, and the slot/groove invisible "track" beneath the red platform... "steers" it around. hmm.
  25. Really nice improvement ! congratulations
  26. @jerome thanks for the tips about GC. Changing my code as you suggested I produced two new trials one using my custom method and one using BJS to check when a bounce might be needed. The average results for 100 frames are now custom 4572.1 milliseconds BJS 4424.25 milliseconds much closer. new playground for custom method http://www.babylonjs-playground.com/#205HSN#1
  1. Load more activity