Search the Community

Showing results for tags 'threejs'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • HTML5 Game Coding
    • News
    • Game Showcase
    • Facebook Instant Games
    • Web Gaming Platform
    • Coding and Game Design
  • Frameworks
    • Phaser 3
    • Phaser 2
    • Pixi.js
    • Babylon.js
    • Panda 2
    • melonJS
  • General
    • General Talk
  • Business
    • Collaborations (un-paid)
    • Jobs (Hiring and Freelance)
    • Services Offered

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start



Website URL





Found 54 results

  1. MarianG

    ThreeJS animation

    Hi guys. I have to implement a fbx animation file with threejs. I convert fbx to dae, and try to implement, but it seems to not work. And trust me, I tried autodesk dae, opencollada dae, json from I don't know what to do more. First it say that not find skeleton. I found a similar issue and there say to add manual in dae the skeleton. But now it say "could not find joint Joint1".... Animation is made with mixamo. Please help me. I'm not familiar with maya or 3ds max, and I don't know where is the problem. Thank you. walking.fbx
  2. Truly the most basic game of all, don't touch anything. Post your score. Dodge: Zombies
  3. Hi All, I'm a fan of opensource technologies and softwares. I have been using BabylonJs for 3-4 weeks now and it's an awesome framework and nothing short of any other webgl frameworks out there. I have just released the alpha version of my site, it's not much but it is something. You can take a look at the attached screenshots from the site below. I'm a Designer, Art Director and Creative Director from India, I also do a little bit of programming. I always wanted to give back to the open source community (after having enjoyed open source softwares for over 5-6 years : ) ), but I'm limited by my programming knowledge. I can contribute in terms of creating demos for BabylonJs but I will still be limited by my development experience, I will need someone who is good at programming to create quality demos which we can add to BabylonJs's showcase and make it more desirable than other frameworks like "threejs". As far as my experience goes, any new potential user of Webgl will start looking for frameworks as Babylon and threejs. Even though threejs is old (no offense) and not as fast as babylon most of them if not all will end up choosing threejs over BabylonJs because the kinda demos they have at threejs site is kickass and highly polished. When I look at the demos in BabylonJs's site in comparison with the demo's at threejs the quality of BabylonJs demos are far far less polished (no offense again). This doesn't mean that there are no quality demos in the site, there are great demos like The Dino Hunt, Sponza, SPS. But we are easily outnumbered by more than a 50 demos at "threejs". I think the first step to fix anything is to acknowledge that there is a problem and I think we do need at least a dozen quality demos to showcase at the home page of BabylonJs, the rest will follow as the users favour Babylon over other frameworks looking at the demos we create. But I can't do this without help from a good developer who is willing to contribute in their free time just like our friends developing BabylonJs, it's a great way to return the favor. What do you get in-return? You will have a set of polished demos to add to your portfolio and also I'm sure this will be a tremendous opportunity to learn from each other. You can take a look at my works in the links below if you would like to know more about me and my work. Portfolio: Dribbble: And it definitely is gonna take time to create those dozen demos, atleast 8-10 months or so if it is only a 2-3 of us are going to work on it. We can take simple ideas which can be done in like 4-5 weeks of time and launch them. @Deltakosh : Let me know what you think, I will most definitely need your help in getting help from developers to get these demos done. If you are already working on any demos already, I can contribute in terms of modeling and user interface design for the demos. Cheers Guys
  4. The problem: In the awesome Three.js, I can't figure out how to convert an EllipseCurve into a path that I can extrude along. In the example below, if I uncomment the LineCurve3, my square extrudes along it nicely. If I run it as the EllipseCurve, there are no errors but nothing shows on screen. I have tried zooming the camera right out to make sure it's not off the screen for any reason. I know the EllipseCurve is being generated correctly as I can write it out with a line material (not shown in the code below). The code var radius = 1100; var degreesStart = 75; var degreesEnd = 30; var radiansStart = (degreesStart * Math.PI) / 180; var radiansEnd = ((degreesEnd) * Math.PI) / 180; // this won't seem to work as an extrude path, but doesn't give any errors var path = new THREE.EllipseCurve(0, 0, radius, radius, radiansStart, radiansEnd, true); // this works fine as an extrude path //var path = new THREE.LineCurve3(new THREE.Vector3(0, 0, 0), new THREE.Vector3(1000, 1000, 0)); var extrusionSettings = { steps: 100, bevelEnabled: false, extrudePath: path }; // draw a square to extrude along the path var sectionSize = []; sectionSize.push(new THREE.Vector2(0, 0)); sectionSize.push(new THREE.Vector2(1000, 0)); sectionSize.push(new THREE.Vector2(1000, 1000)); sectionSize.push(new THREE.Vector2(0, 1000)); var sectionShape = new THREE.Shape(sectionSize); var componentGeometry = new THREE.ExtrudeGeometry(sectionShape, extrusionSettings); var component = new THREE.Mesh(componentGeometry, material); group.add(component); scene.add(group); What I have tried: My attempts to make it work have all tried to extract the points from the curve into a path to use in the extrusion. The closest I felt I got was var ellipsePath = new THREE.CurvePath(path.getSpacedPoints(20)); // where 'path' is my EllipseCurve in the code above // (and then changed the extrusion settings to use 'ellipsePath ' instead). This gave the error "Cannot read property 'distanceTo' of null". I can't seem to get my head around how the EllipseCurve relates to points that relate to a path. Can anyone point me in the right direction please, or have code where you've come across the same problem? Many thanks.
  5. tazowrhd

    3D 2048

    This ismy version of 3d 2048. Made with threejs and tweenjs. It is not perfect but I hope you will enjoy. link : github :
  6. Hi everyone! I could like to announce the Freeciv-web WebGL 3D engine competition to the developers with WebGL and Three.js skills in this forum. The Freeciv-web project is exploring ways to create a new 3D engine for the game, and would like suggestions about how to accomplish this goal. Would anyone here be interested in contributing a proptype for a WebGL engine which can render units, cities and terrain for a game-engine for Freeciv?
  7. Hello, In Babylon JS, only one camera is active at a time, howver you can construct multiple cameras in a scene. How can you allow the users to swtich cameras on a button click. For example, in this Three Js scene, you can hit 1 or 2 button to switch cameras, making an active camera false or true. The only example i have seen in Babylon JS is the Train example, however there is no explanation of how to switch the cameas on button click. Thanks, Moses
  8. Hi everyone. I've been toying around with using perlin and simplex noise to generate height values for a terrain mesh with threejs. My aim is to create something visually similar to Populous. So far I have something that looks like this. At the moment I have custom plane mesh subdivided horizontally and vertically by 10. Each of the mesh's vertices y value is determined by using a noise function. This all works fine enough it seems, though I am running into issues when trying to implement a scrolling effect, again similar to Populous. First I declare and init some variables. //globalvar mesh_width = 10, mesh_height = 10;var tile_width = 1;var xpos = 0, zpos = 0;var x = xpos, z = zpos;//initialize terrain data arrayvar terrain_data = new Array(mesh_height);for(var i = 0; i < terrain_data.length; i++){ terrain_data[i] = new Array(mesh_width);}noise.seed(Math.random());I then define the terrain_data object using the noise functions. for(var j = 0; j < 10; j++){ for(var i = 0; i < 10; i++){ var value = noise.simplex3(x, z, 0); value *= quality; //console.log(Math.abs(noise.simplex2(x, z))); terrain[i][j] = Math.abs(value); x += 1; }z += 1;}EDIT: This was a mis-post. I'm sorry. It can be deleted.
  9. Hey BJS devs and others who visit this form! Myself and my development partner (also bussiness partner) Louis Gurtowski will be attending GDC the week of March 2-6 in San Fran. We have left the 4th and 5th open to hopefully schedule a gathering of people(only one of these days - perhaps one evening?), with those of you whom often communicate on this forum, but would most likely benefit from an actual meeting of persona somewhere in or around the convention. I and my bussiness partner represent the control of develoment within our company, however, we're more interested in mostly a social event in exchange of ideas from all persons within a social gathering. We're talking one on one here - no presentations. I sincerely hope that you loosers who call themsrlves developers - (this is entirely a joke to hopefully grab a plank amout of interest in organizing such an event.) And if you missed the "Plank" joke, then you won't likely be attending due to the delta(s) within your own reality. But for those of you who would like to meet, I firmly believe it can greatly benefit our community, and much can come forth from this exchange. Any responses and ideas brought forth here on this thread are eagerly welcome - and if I receive few or none, then I'll assume what the level of dedication to this new framework is meeger at best! Just joking, this community and forum is the best. So if ANY of you out there are attending GDC this year, please post here - I hope to build a list. Also, we're welcoming any ideas as to where we might meet and when we might meet - as own our hotel is not so close to the convention center. OH - and wherever we meet - must serve alcohol, or let us bring our own - or it's all a mute point (in my opinion.) Let's return with some embarrssing pics - or at least some selfies with other developers. POST,POST,POST!!!! here v 2 weeks left! DBawel
  10. Hi everyone, I wanted to point everyone to two examples we just put online. They are part of the examples of a new free service named PlugPIN JS that we just launched. This service turns smartphones into remote controls for games, websites and apps. Here are the two links to the examples, both built with Threejs: 1. Simple Shooter 2. Remote Controls with Gyro The second example is fully documented under "onOrientationChange()" in the Docs. We hope you like it and that it sparks your creativity to make your games interactive by using your smartphone. If you have any questions concerning the examples or the JS Library, then please don't hesitate to contact us. We would love to hear what you think about it and how you would like to use it. Joost @ PlugPIN
  11. Ironbane is a 3D Action Rpg MMO built using HTML5 Play Now! We've just released a new version 0.4 pre-alpha. Our technology stack is using [MeteorJS]( This allows us to use the concept of reactivity and apply it in a gaming context, which is very cool but experimental to say the least. In addition we're using AngularJS on top of MeteorJS ( This unique combination allows us to re-use a lot of components while still making good use of Meteor's concepts which are very helpful for us. We use THREE.js for the rendering engine, as well as a custom Component Entity System built around it. We're now fully utilising []( as our level editor of choice. Sam has been creating the Tower of Doom map ( in this editor, and we're very happy so far with the results. Our game can directly pull the levels from Clara, read entities and put them in our game. This allows our level editors to place enemies and other entities anywhere they want without the developers having to manually export/import them to the game. Please check out our game and our forums at !
  12. Hello Html5 Game Devs, I am the developer of Creature, an exciting new cutting edge 2D animation tool! With Creature, you can add stunningly fluid animation to your digital content. At the core of Creature is a highly advanced skeletal animation, mesh deformation and dynamics system. Save Time + Cost with Automated Animation The main difference between Creature and other animation tools out there is its Directible Automated Animation Engine. What that means is the ability to procedurally generate, through an Automated but User Directible process, complex motion like Walk/Run Cycles, Tail Flopping, Wing Flapping, Cloth Dynamics and Flesh/Muscle response. Such types of motion are normally very tedious to animate manually. With Creature, such tasks can be done in a much more efficient manner, resulting in huge time and cost savings! Of course the point of Creature is not to take away from animation as an art but to add to it. Hence all automated procedures can be tweaked, directed and in many cases manually adjusted. Trailer Video: Website: ExamplesHere are some examples of Creature's Directible Automated Animation in action: Html5 DemosCreature exports to multiple formats and game engines, including popular Html5 Game Engines that use WebGL.Currently the engines supported are: PixiJS, BabylonJS and ThreeJS. I also have an alpha version supporting the new Cocos2dJS V4 runtime as well. Cocos2djs V4 demos: PixiJS demo: Hair, Cloth Dynamics, Automated Walk Cycles The mage below has Hair and Cloth simulated using the Dynamics/Physics motors of Creature. The walk cycle is automatically generated using Walk Motors: Soft Body Dynamics, Chain Physics, Advanced Mesh Deformation The chameleon creature below has Soft Body Dynamics applied to its body so it has a "fleshy" reactionary response to its underlying skeletal motion. The tongue is simulated using Bone Physics Dynamics Motors and advanced Control Pt Warp motors that allow it to deform and extend/compress the tongue. The eyes are deformed using Control Pt Mesh Motors and the legs are automatically walking via Walk Motors: Animating Whole Images Creature can also work on whole complete images like this tiger. The subtle breathing/keep alive motion is generated via fancy Rotate Motors and Bend Bone Motors. There is also mesh deformation going on that deforms the eyes for blinking: I will be more than happy to answer any more questions you have as well as post any animation samples. In addition to that, do note that we are constantly updating and adding features to our HTML5/WebGL runtimes so any suggestions/tips will be appreciated. Cheers,Chong
  13. Hello people, i want to extract a model from threejs object to obj-format with textures (mtl file and some jpg's). How can I do it? Thank you for any help.
  14. I created this WebGL version of Casino Slots to test iOS8's newly added WebGL capabilities. There's still some issue with textures and audio but it works fine on Chrome/Safari (WebGL enabled) en Firefox on Desktop. (Haven't tested Android tablets). Enjoy = D Link:
  15. Hello yall! I'm trying to make a dynamic displacementMap drawing (onmousemove) an html canvas. The experiment is based on The problem is that updating uniforms.tDisplacement.value with new THREE.Texture(canvas) won't work at all. I tried using THREE.ImageUtils.loadTexture( canvas.toDataUrl()) and it kinda works, but's too slow and messes up the canvas itself update. To exclude problems with the canvas, I tried using THREE.Texture(canvas) as map of a MeshBasicMaterial and it worked fine onmousemove. TIA TL;DR What's the best/fastest way to update a displacement map in a ThreeJS normalmap shader from a canvas?
  16. Hi everyone, we’ve been working hard on optimization for the king of the games: chess. It has been 100% revisited. We shared about our technical researches. We are talking about Low Poly Retopology and 3D normal maps: About the game, here is a presentation video: If you want to give it a try you can play here: Includes basic jocly features: - play vs computer, friends or other jocly users - chat room - video chat (WebRTC) - recorded games for replay - embedding tools - development tools Feedback very welcome Thanks. jerome
  17. Hi all, I recently started playing around with threejs and am looking for suggestions on implementing terrain following. I have a simple demo here: This works to a degree, but it isn't very smooth. The box just kind of pops to a new height. My current technique just combines triangles into quads, checks to see which quad the box/player is within and then sets the box's y position to the average y of the quad's vertices. The code is below. for(var j = 0, len = geometry.faces.length; j < len; j+=2){ face1 = geometry.faces[j]; face2 = geometry.faces[j+1]; if( pos.x >= verts[face1.a].x && pos.x <= verts[face2.b].x) { if(pos.z >= verts[face1.a].z && pos.z <= verts[face2.b].z) { var avgY = verts[face1.a].y + verts[face1.b].y + verts[face1.c].y; avgY += verts[face2.a].y + verts[face2.b].y + verts[face2.c].y; targetY = avgY * 0.166 + 4.5; } }}// increase y positionif(targetY != undefined && Math.abs(targetY - pos.y) > 0.5){ if(pos.y < targetY) pos.y += 0.5; else if(pos.y > targetY) pos.y -= 0.5;} I was just wondering if anyone had any tips or good resources for a better implementation and smoother results. Cheers.
  18. Hi, we just released a new chess variant called Courier Chess (12th century) We worked a lot on textures and pieces low poly generation, in the end the scene has less than 30.000 faces, which makes it very fluid. Feedbacks very welcome. Thanks, jerome Direct access to game: More details in our post: Technologies: webgl, threejs, html5, angularJS Tools: Blender
  19. Hi there, we come back with a 2nd 3D game upgrade on Jocly platform: chess! We are very happy with the rendering, what do you think? You can play it here: If you don't have a compatible browser or graphic card for WebGL, here is a demo video: jerome
  20. yanipra

    Pixel shader

    Hi, All i'm newbie I have question about code <html><head> <title>FIRST THREE.JS TUTORIAL</title> <script id="vertexShader" type="x-shader/x-vertex"> uniform sampler2D baseTexture; varying vec2 vUv; void main() { vUv = uv; vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 ); gl_Position = projectionMatrix * mvPosition; } </script> <script id="fragmentShader" type="x-shader/x-vertex"> uniform sampler2D baseTexture; uniform float alpha; varying vec2 vUv; void main() { vec4 grass = texture2D( baseTexture, vUv ); grass.a = alpha; gl_FragColor = grass; } </script></head><body> <div id="treejs" style="position: absolute; left:0px; top:0px"></div> <script type="text/javascript" src="js/three2.js"></script> <script src="js/loaders/ColladaLoader.js"></script> <script src="js/OrbitControls.js"></script> <script src="js/libs/stats.min.js"></script> <script type="text/javascript"> var container; var scene, camera, renderer, stats, controls, sceneCube; var geometry, material; var SCREEN_WIDTH = window.innerWidth, SCREEN_HEIGHT = window.innerHeight; var VIEW_ANGLE = 45, ASPECT = SCREEN_WIDTH/SCREEN_HEIGHT, NEAR = 0.1, FAR = 20000; var clock = new THREE.Clock(); //-- variable uniforms //var customUniforms; init(); animate(); function init() { container = document.getElementById('treejs'); document.body.appendChild(container); scene = new THREE.Scene(); //-- camera camera = new THREE.PerspectiveCamera(VIEW_ANGLE, ASPECT, NEAR, FAR); camera.position.set(0,100,400); camera.lookAt(scene.position); scene.add(camera); //-- light var light = new THREE.PointLight(0xffffff); light.position.set(0,250,0); light.lookAt(scene.position); scene.add(light); //-- axes var axes = new THREE.AxisHelper(1000); scene.add(axes); //-- grid var grid = new THREE.GridHelper(500,500); scene.add(grid); // Skybox sceneCube = new THREE.Scene(); var path = "resource/Cloudy-Sky/"; var format = '.jpg'; //-- bt buttom, ft front, up top, var urls = [ path + 'px' + format, //benar salah path + 'nx' + format, // benar path + 'py' + format, // path + 'ny' + format, //bawah benar path + 'pz' + format, //benar benar path + 'nz' + format // benar ]; var textureCube = THREE.ImageUtils.loadTextureCube( urls, new THREE.CubeRefractionMapping() ); var shader = THREE.ShaderLib[ "cube" ]; shader.uniforms[ "tCube" ].value = textureCube; var material = new THREE.ShaderMaterial( { fragmentShader: shader.fragmentShader, vertexShader: shader.vertexShader, uniforms: shader.uniforms ,depthWrite: false, side: THREE.BackSide } ), meshSkybox = new THREE.Mesh( new THREE.CubeGeometry( 10000, 10000, 10000,1 ,1 ,1, null, true ), material ); scene.add( meshSkybox ); var jsonLoader = new THREE.JSONLoader(); var modelTexture = jsonLoader.load( "resource/heightmap/IceAge.js", addModelToScene ); stats = new Stats(); = 'absolute'; = '0px'; = 100; container.appendChild(stats.domElement); renderer = new THREE.WebGLRenderer(); renderer.setSize(SCREEN_WIDTH, SCREEN_HEIGHT); container.appendChild( renderer.domElement ); // CONTROLS controls = new THREE.OrbitControls( camera, renderer.domElement ); } //-- model function function addModelToScene(geometry, material) { var texture1 = new THREE.ImageUtils.loadTexture("resource/images/grass-512.jpg"); texture1.wrapS = texture1.wrapT = THREE.RepeatWrapping; this.customUniforms = { baseTexture : { type:"t", value: texture1}, alpha : { type:"f", value: 1.0} }; //this.customUniforms.texture.value.wrapS = this.customUniforms.texture.value.wrapT = THREE.RepeatWrapping; this.shMaterial = new THREE.ShaderMaterial ( { uniform: customUniforms, fragmentShader : document.getElementById('fragmentShader').textContent, vertexShader : document.getElementById('vertexShader').textContent, //side: THREE.DoubleSide } ); terrain = new THREE.Mesh(geometry, shMaterial); terrain.scale.set(128,128,128); scene.add(terrain); } function animate() { requestAnimationFrame(animate); render(); update(); } function update() { var delta = clock.getDelta(); time = clock.getElapsedTime() * 1000; stats.update(); controls.update(delta); } function render() { renderer.render(scene, camera); } </script></body></html>I have question i can't my texture on my object (black object) the result is: Please Help me, thank
  21. Hi, we just released Tafl Games, ancient medieval board games. We worked hard on graphics for the 3D webgl rendering and for performances. We managed to be very low poly, which is good for game play The board textures are dynamically painted depending on the number of cells or notations via canvas and then applied as texture to 3D board's materials (threejs), or painted to board canvas for 2D views. Canvas are also used for 2D pieces and clickers. To play, all the different boards and play links are available at the bottom of this post. Here is a short presentation video. As usual any feedback is very welcome jerome Examples of 2D/3D views (click on boards to play) Ardri 7x7 board From Scotland Tablut 9x9 board From Laponia
  22. Hi, we released a new game on Jocly platform: Penguin Soccer Here is a short presentation video: As discussed in a previous Chess 3D topic, we worked on RAM use optimisation. We tried to get very low poly meshes. We first designed high res penguins, then retopology to create low poly caracters with texture baking. In the end we get very light scene and a much smoother user experience. We can also now make our own sky environnement: the moon, stars and boreal are a 3D scene rendered to 6 images for a cube projection. Hope you'll like it! jerome
  23. Hi! We just released our latest webgl game / demo. It's called "Kid Disco" and is a music driven platformer. It uses Three.js (webgl) for rendering and chipmunkJS for the physics. It runs best in Chrome but should also work in latest FF, IE11 and Safari. Have fun!
  24. Ironbane is an open source cooperative action MMO played straight from your browser, using 3D graphics and a retro graphics style. The game focuses on simple gameplay without leveling and combat using swords, axes, daggers, bows and magic staves. Our intention is to create a vast alive and immersive world. The main objective of the game is to defeat Ironbane, a dragon hiding in a castle waiting for a challenger. Future updates will include the ability to buy houses, participate in player arenas, do quests, make use of transports such as hot air balloons, boats and trains and many other things that we are still thinking of. Play the game at Looking for programmers Are you looking for a fun side project to work on? Ironbane runs in the browser and is on the cutting edge of web technology. It will be also great for your portfolio as we are an already mature project (started in Feb 2012). How's the code like? Ironbane runs on pure Javascript, on both client and server. Javascript is arguably an easy language to work with, and it allows you to program more productively with easy debugging and no need to recompile (atleast on the client). What am I allowed to work on? Anything you like! You can work on the game code, the 3D renderer, boss scripts, forum software, or others! You can work on whatever you want to work on, you basically have the power to change anything you like. All the source code is waiting for you on GitHub. With that said, you need to learn how to use Git if you haven't yet. It's an incredible powerful tool and you will need it at some point in your life anyway. What's Git? I'm scared! No need to be. Read this tutorial, it explains Git well and will get you up and running in no time. How do I contribute? By making pull requests on the repository you're working on! It's that simple. Make a pull request and one of the lead developers will check it out and give you feedback. If the code looks fine, it will be pushed live to instantly. Start by reading the Getting started pages on the GitHub repository. If you need help, feel free to make an issue there or here on the forums. Also looking for a Project Manager Ironbane is a fun project to work on, but I have to focus on code and cannot at the same time manage a project, because it takes up too much of my time. If you have experience and motivation to manage a group of ~10 people as well as the general direction of the game, drop me a line. Contact E-mail : Skype: janssen.n You can also contact me or a team member using our forum. Screenshots
  25. Hi, we just released a completely new interface for our html5 board game platform: (already more than 50 games) We used AngularJS and provided a responsive design to be able to use the same interface on the smallest phone to the biggest desktop screen. Most of the games are available in 3D (WebGL thanks to Threejs), video chat available depending on your device (WebRTC), and many other features. We are looking for feedback, all comments are very welcome. More details here: Thanks!