Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Reputation Activity

  1. Like
    mazoku reacted to rich in What would you recomend to replace Signals?   
    I just found it amusing that the original post was asking what to use instead of Signals in v3 (the answer is, of course, Events), and then gave an example of something a Signal couldn't ever do anyway.
    The biggest issue is that web devs lead almost exclusively asynchronous development lives. The overwhelming majority of your code and practices are honed around this, and there are so many libs out there to help with it. Which makes perfect sense, it's how the web itself works after all. Look at Promises, created specifically as a proxy to an as-yet-unknown value. A very common occurrence in web apps.
    In a game, this is almost never the case though. Very rarely do you ever have to wait for the value, it is nearly always calculated instantly (or should be) or available elsewhere in memory. So introducing an artificial async jump into this value fetch is a really backward step. It's the same with data streams too. Unless you are genuinely fetching remote data all you've actually managed to do is add overhead to a situation that didn't need it.
    The absolute shortest possible path for your data is the best. Retrieved in the fewest jumps possible, with minimal or no branching, invocations or creation of un-necessary objects (which includes anonymous functions, those wonderful little bundles of gc bait). This goes against everything that is standard for a web app. But you're not building a web app.
  2. Thanks
    mazoku reacted to NEWREBEL in Combining Three.js and pixi.js   
    Isn't combining PIXI and THREE as simple as this?
    var THREE_TEXTURE = PIXI.BaseTexture.fromCanvas(renderer.domElement, PIXI.SCALE_MODES.LINEAR);    // 'renderer.domElement' the view, canvas-element in THREE var THREE_SPRITE = new PIXI.Sprite.from(new PIXI.Texture(THREE_TEXTURE)); app.stage.addChild(THREE_SPRITE); // 'app.stage': PIXI's stage Then simply update that PIXI BaseTexture within requestAnimationFrame after THREE rendered its content.. (in that same function)
    // all kinds of THREE things // and then: var render = function() {                              // render the THREE scene, whatever you want...                            // and this simple thing will update PIXI's baseTexture every frame.        THREE_TEXTURE.update();                                                // course make the RaF loop: requestAnimationFrame(render)   }; render(); // init it.. This works, even on an iPad mini. Can't find anything wrong with it. It keeps running at 60 FPS, even on a heavy project I'm working on.
    One canvas element (PIXI's).
  3. Sad
    mazoku reacted to 8Observer8 in (re)learning mathematics   
    I learn math for graphics and games too. I study pure WebGL and JavaScript/TypeScript. And I study Phaser (2D) and Babylon.js (3D). We can use WebGL and JavaScript/TypeScript to study Geometry, Trigonometry, Linear Algebra and Phisics. This is my short example how to use 2D Physics with TypeScript. Here you find a video course: Math for Game Developers
    Books for beginners that I study:
    2004 - 04 - Math and Physics for Game Programmers - Wendy Stahler - 504 pages: Amazon 2011 - 02 - Graphics for Game Programming - JungHyun Han - 330 pages: Amazon 2011 - 06 - Mathematics for 3D Game Programming and Computer Graphics - 3rd edition - Eric Lengyel - 624 pages: Amazon Code: http://mathfor3dgameprogramming.com/ 2011 - 11 - 3D Math Primer for Graphics and Game Development - 2nd edition - F. Dunn, I. Parberry - 846 pages: Amazon 2013 - 12 - Mathematics for Computer Graphics - 4th edition - John Vince - 412 pages: Amazon 2015 - 08 - Essential Mathematics for Games and Interactive Applications - 3rd edition - James M. Van Verth, Lars M. Bishop - 624 pages: Amazon Code: https://github.com/jvanverth/essentialmath
  4. Thanks
    mazoku reacted to geocine in Phaser 3 Typescript Starter   
    This is a Phaser 3 starter with , Rollup for bundling and nollup as development server.

    Hi I am a frontend developer by profession and just thought of digging into HTML5 Game Development amidst this pandemic (Stay at home and take care of your health). This starter is based on the template created by Richard Davey with a number of improvements:
    Only 1 rollup config for both development and production No JavaScript files are written to disk during development which makes it very fast thanks to nollup Has hot reload feature, code recompiles balzingly fast and browser refreshes as you change your source code. Static files are separated on public folder, sources (TypeScript) on src folder Can easily be deployed to production using a free services like Netlify. With the following configuration Build Command: yarn build Publish Directory: dist This is a sample that is deployed to Netlify, https://phaser3-rollup-typescript.netlify.com/
  5. Thanks
    mazoku reacted to vornay in Google GameSnacks   
    "Bite-sized HTML5 games, accessible to everyone."
    "Google has announced a new HTML5 platform called GameSnacks that's designed to help devs bring quick, casual games to any device."
  6. Thanks
    mazoku reacted to blackmoondev in Google GameSnacks   
    We have two games on the platform. It's pretty nice and cool, the api isn't very hard to add. 
    Process of dealing with Google is quite long though (as you could imagine). 
  7. Thanks
    mazoku reacted to plicatibu in Google GameSnacks   
    @blackmoondev Would you mind detailing us how is this process ?
  8. Thanks
    mazoku reacted to ivan.popelyshev in Tips on isometric games with PixiJS   
    There's one small isometry demo:
    However that's not how I usually do isometry. Usually I just use Y scaled by 0.5. You even don't need those "x+z" "x-z" coordinates, if you want to make tiles - take whole two-dimensional array and remove "odd" cells. Like, use only "black" cells of chess board. Then the only problem is to detect which tile is under mouse, but then it will be the only place where you have a isometry math. Everything else is just "x=x'; y = y' / 2"
    I have many things to tell about isometry: how to sort elements, how to make walls on tiles and intersect/sort them too, but I want to sleep. Try to do something, then I'll give you more info.
    and Welcome to the forums!
  9. Thanks
    mazoku reacted to b10b in Questions from a HTML5 rookie: Unity, market and web portals   
    That was true many years ago, but not any longer.  Standart HTML5 output from Unity is effectively a WebAssembly blob that runs in all modern browsers, and it's possible to hook it into other Javascript (in or out) quickly enough.  It has it's advantages and drawbacks.  The new tooling, aka Tiny, is using ECS approaches to modularise things to an atomic level - and is very smart if you are impressed by such things.  But the takeaway is there's really no current reason to think that the output from Unity can't be as efficient (or more so) as something like Phaser given some of the techniques it now employs.  It's just that most developers aren't especially efficient in using the tools available
    As for the other points I think there's big risk in explaining "all the ways to make money" because most will result in high hopes, reality crunch, and loss.  Why?  Because it's easier than ever to make a game, so it's harder than ever to make a dollar from that game.  Instead move creative thinking to value generation: find a problem, fix it, get paid, repeat.
  10. Thanks
    mazoku reacted to plicatibu in Questions from a HTML5 rookie: Unity, market and web portals   
    I can't talk about Unity because I don't know it, but AFAIK it currently doesn't generates pure HTML5 code. One needs a plugin to run it on browsers. 
    @Roth You'd better off picking a javascript framework. In this case i highly recommend Phaser.js .js. It is the best 2D framework hands down.
    If you intend to generate games for MS Windows, MacOS, Linux,  Android and iOS, there are tools that allow you generate binaries for these platform from your javascript code.
    Other frameworks I'd recommend that generates HTML5/javascript framework are cocos2d-x  (I'm talking specifically about its tool named Cocos Creator).
    For the above mentioned frameworks its required you understand how to program in javascript.
    If you don't know / don't want to learn it, you have other options. 
    Gideros mobile:
    - its programming language is Lua. Lua is a very easy programming language. It resembles python (but it is easier). Also, lua is the fasted script language. Under the hood Gideros engine is written in C++.
    You write your game once in Lua and export it to MS Windows, MacOS, Linux, Android, iPhone and to WEB.
    For WEB, the code generated is WASM instead of JavaScript. It has the advantage of make it harder to retrieve your source code than those written in plain JavaScript. 
    Also Gideros allow minification, compression and encryption of both assets and source code. Its an extra layer of protection that will make reverse engendering harder.
    I'm learning it since November 2019 and I'm loving it. I highly recommend it. 
    Cocos2d-x also allow you to develop in C++ and Lua. You can export code to Android, iPhone and to WEB  (the code generated in this case is in javascript). I'm not sure if it exports to consoles (but I think so).
    Openfl is a wonderful framework. You will code using Haxe programming language. Think of Haxe as ActionScript 3 on steroids. 
    Openfl exports to MS Windows, MacOS, Linux, Android, iPhone, WEB and consoles.
    There are a lot of frameworks I didn't talked about. You can search for them on Google. 
    I highly recommend Gideros for those that don't want to code in JavaScript and Phaser for those that want to use it. But in the end,  you should study a bit of each framework that you think is nice, make some projects with it and then make an educated decision on which to use. 
    Now that I talked a bit about which tools to use, let's talk about some options on how to make money with game development.  
    1. Develop games as a freelancer. You can sign-up yourself in sites like upwork, and freelancer and take jobs to make custom games as well as convert games made in Flash to HTML5.
    1.1 you must have a good experience making games in order to delivery what was requested. Otherwise you won't be paid.
    1.2 you won't have any rights of games delivered.
    1.3 Once a game is delivered you have to look for the next job.
    2. You can sell exclusive licenses of your own games. You decide which game you want to do (based on your experience,  on your personal taste, on what you think market is demanding, or even by asking directly to probably clients).
    You have to get in touch with sites like Y8 and deal with them directly.
    2.1 you may develop a game market is not interested in. 
    2.2 you have invest your time developing a game that may not be sold.
    2.3 you have to invest your money buying assets (images, sounds...)
    2.4 you have to digg for contacts of clients and sometimes its harder to get them. Sometimes they don't deal with an independent developer. They acquire their games directly from a partner.
    2.5 it's a time consuming task to deal with many possible clients.
    2.6 the process, from contacting a prospect until get contracts signed and receive the money may take months.
    2.7 Your game must be well made, attractive and have a great playability in order to attract attention of your prospectors. The more amateur the game looks, the less it will be worth. 
    Even with all this drawbacks, it's one of the best way to make money. 
    3. You can sell non-exclusive licenses of your own game. It's very similar to selling exclusive licenses.
    The differences are that in exclusive licenses the value paid by client is higher but you can sell the game just once and that in non-exclusive licenses, value paid is lower but you can the game many times.
    Usually you would earn more selling non-exclusive licenses.
    A very important think you must bear in mind if you want make a living selling non-exclusive licenses: NEVER, EVER sell non-exclusive licenses to game distribution services like famobi, game distribution, gamonetize, and others like them. They will distribute your game to all portals that use their services to get games and you will never be able to sell another non-exclusive licenses of that game. No one will pay for something they can have for free. You were warned!
    3 - Monetize your games with ads. It basically works this way: you submit your game to a game distribution service like famobi, gamonetize and game distribution after adding their Ad SDKs.
    Read what I wrote here: 
    I'm sure that there are other ways to monetize, but those are the ones on the top of my head. 
  11. Like
    mazoku got a reaction from 8Observer8 in Game server question   
    Thank you, thats nice info. 
  12. Thanks
    mazoku reacted to 8Observer8 in Game server question   
    Heroku and OpenShift. I use Heroku. You can connect Heroku and GitHub. Heroku will automatically reload files from GitHub when you push. Read this step-by-step instruction how to deploy on heroku: Getting Started on Heroku with Node.js | Heroku Dev Center
    Node.js, C++, C#, Java, or even C and Assembler - it does not matter because of network latency. But I like to use TypeScript instead of JavaScript. But Node.js has free hostings and it is more easy to start with socket.io You can use one language on server and client and you can share the same classes with server and client. I use TypeScript on server and on client and share some general code between them.
    I recommend to start with this article: http://buildnewgames.com/real-time-multiplayer/
    You can run and test in two browser windows an example from the article that I upload on heroku: https://battle-world.herokuapp.com/?debug
    Source Code on GitHub of the example from the article: https://github.com/FuzzYspo0N/realtime-multiplayer-in-html5
    This book shows how to write Tic-Tac-Toe and Snake Games with multiplayer using WebSockets and socket.io: Multiplayer Game Development with HTML5
    This book is good but it uses WinSock and C++ with SDL2 for graphics but it is useful for general understanding of basic concepts how to compensate of network latency: Multiplayer Game Programming: Architecting Networked Games (Game Design)
    Or maybe this video is more simple to start:
    1- Making Multiplayer HTML5 Game: Setup & Sending Files. NodeJs Tutorial Guide
  13. Like
    mazoku got a reaction from plicatibu in [Off topic] Merry Christmas!   
    Merry Christmas! 
  14. Like
    mazoku got a reaction from ArjunKumar in Javascript Courses!   
    Audit here is free https://www.coursera.org/search?query=javascript&
  15. Thanks
    mazoku reacted to b10b in Ways to make money from html5 games 2019   
    Do: VAS (aka Value Added Services).  Don't: in-game-ads (aka dyscalculia).
  16. Haha
    mazoku reacted to inyourpc in 300,000 USD Price for HTML 5 Developers   
    For a website built in wix.com, thats some serious click bait you give!
  17. Like
    mazoku got a reaction from khleug35 in Blocks Puzzle   
    Simple classic Blocks Puzzle game where you make rows and columns of blocks. 
    Play Blocks Puzzle
    Get Blocks Puzzle for Android

  18. Like
    mazoku got a reaction from webdva in Phaser Javascript Games Developer needed (Phaser CE)   
    Is remote possible? Remote as another continent?
  19. Sad
    mazoku got a reaction from Bakudan in Phaser on Android, runs really slow (Cordova / Phone Gap)   
    Phaser + Cordova have better performance with low resolution. But the performance is bad. Not for platformers. 
    PIXI + Cordova with high resolution has better performance. And it has better performance with big resolution of the game (wtf? ) But you need to write from scratch many good things that Phaser offers. 
  20. Like
    mazoku got a reaction from Bakudan in Phaser + WebGL + Cordova on Android 8   
    Have you checked your app (cordova + phaser + webgl) on Android 8? There seems to be some strange problem with gl?
  21. Like
    mazoku got a reaction from Bakudan in Phaser 3 + Cordova performance   
    Anyone here with cordova + phaser 3 game? How is the performance related to phaser 2 ?
  22. Like
    mazoku reacted to rich in HTML5 to EXE?   
    Electron by GitHub 
  23. Thanks
    mazoku got a reaction from jamespierce in [Solved] Website "Stealing" my Games - What can I do?   
    They are just embeding games from your own site. You can have ads and you will have revenue or you can block them or redirect to some info for the players to view your site instead. 
  24. Like
    mazoku got a reaction from quiphop in Stolen 'instant games' on Facebook   
    Also you can reach some people from facebook team from the instant games group there.
    Edit: I hate facebook, their instant games api, their other apis, their support and everything fb related. 
  25. Like
    mazoku got a reaction from JackFalcon in How to publish HTML5 games on facebook?   
    The link is not working 
    Also I want to ask you for feedback on this. 
  • Create New...