9 ms·
Freeciv WebGL 3D
- em3rgent0rdr 10y agoJust tried it out and sharing my experiences. It is quite choppy for me, only getting a few frames per second, on 2K monitor, but I'm on a computer that will happily play Civ 6 on low quality. I wasn't expecting it to be fast, though.
- kalleboo 10y agoRunning the benchmark in the game settings, I got these results on my wholly-unsuitable-for-any-gaming 2012 Retina MacBook Pro (GeForce GT 650M). Highest Gfx settings (default). 2800x1700px window. Best out of 2 runs: Chrome 56: 33 fps Safari 10.0.3: 29 fps Firefox 51: 13 fps
- fb03 10y agoaww, you think your GT650M is unsuitable for gaming? you should try my for-development-only first gen core i7 (920!) with a GEFORCE GTX 275 ;P I can still play Team Fortress 2 at 1080p just fine on this tho ;)
- kalleboo 10y agoPart of the issue is that the laptop has a 3K display (2880x1800) running in scaled mode (3840x2160). And that it has poor cooling and overheats/throttles down at the drop of a hat. And that it's a Mac.
- tgb 10y agoIs the 275 actually slower than a 650M?
- mappu 10y agohttp://www.tomshardware.com/reviews/gpu-hierarchy,4388.html http://www.tomshardware.com/reviews/gpu-hierarchy,4388.html puts the 275 in the same ballpark as the full 650, and the 650M has the same GK107 chip as the 650 but underclocked by 20-30%. So i think my money is on the 275 being faster.
- kasparsklavins 10y agoI have a 710M in my laptop. When I got it a few years ago, I could run most new releases on a 720p display.
- matt4077 10y agomacOS 12.1, NVIDIA GTX960, i7-6700K, 32GB RAM: Chrome 42fps, Safari 38fps. That's somewhat disappointing, both in absolute terms as well as compared to your values. Although maybe it's being throttled at around 40fps which is probably beyond the point of diminishing returns? Edit: Getting 35fps in Firefox, which seems to support the idea that it's being throttled somewhere around that value.
- clarry 10y agoIntel(R) Core(TM) i7-6600U CPU, 1920x1080, Firefox 50: 7 frames per second EDIT: With low settins & AA off, I get 12 fps. Miserable :(
- roschdal 10y agoFirefox has much worse WebGL performance than Chrome. I will create a bugreport to Firefox about this.
- roschdal 10y agoWhich browser are you using?
- em3rgent0rdr 10y agoI'm sorry I forgot to include specs: FPS: 1. Chrome Version 55.0.2883.87 m (64-bit) on Windows 10. AMD A8-3850 APU with Radeon HD Graphics 2.90 GHz 16 GB ram On Firefox 51, I get 2 FPS (although probably roundoff error). Doesn't matter if I use low textures without anti-aliasing. I should not the CPU usage for shoots way up. So most likely the WebGL is not utilizing the GPU. I should note that the GPU is integrated into the CPU chip as an "APU"...maybe this particular model of APU isn't supported by the WebGL.
- yAnonymous 10y ago>ReCAPTCHA couldn't find user-provided function: onloadCallback The captcha is solved, but the page doesn't recognize it. Is signing up really necessary for such a game?
- roschdal 10y agoNo, you don't have to sign up. Accounts is just for persistent savegames.
- BHSPitMonkey 10y agoGood job, HN! We've already killed it.
- roschdal 10y agoSorry, I had to restart the server. Too much traffic! It is back now.
- tech-no-logical 10y agoon the first try, it made firefox (latest beta) crash. on the second try, I got a generic 'unable to connect' notice.
- doppel 10y agoI also get the generic "Connection refused" error message in Chrome - seems like the webserver / services crashed.
- andridk 10y agoConnection refused here
- JepZ 10y agoERR_CONNECTION_REFUSED
- JepZ 10y agohttps://play.freeciv.org/webclient/?action=new&renderer=webgl https://play.freeciv.org/webclient/?action=new&renderer=webg...
- lawless123 10y agoCould we have this 3d in the downloadable binary?
- roschdal 10y agoThis is not really possible at the moment. This 3D version is using WebGL in Javascript running as a web-application, while the downloadable binary is implemented in C.
- lawless123 10y agook
- JepZ 10y agoElectron?
- lawless123 10y agoI think i'd prefer something native.
- JepZ 10y agoWhy? I mean WebGL has hardware acceleration, modern JS is quite fast. Is it just about performance or is there anything else?
- TazeTSchnitzel 10y agoJS is still slower than native code, and has worse memory consumption.
- rubber_duck 10y agoEven disregarding JS vs. native, WebGL has a big perf overhead because it's sand boxing API calls
- roschdal 10y agoHi everyone! I'm the developer of the Freeciv-web WebGL version. I'm very interested in hearing your feedback on this version, so I can improve it. I'm always interested in hearing what you think is the most important thing to improve in the game. (I'm so happy my side-project has reached the frontpage of HN again :) It is using the Three.js 3D engine. Currently it works nicely on modern computers and laptops with decent 3D hardware, and there could be some issues on some mobile devices. For example, old iPhone devices have very poor 3D hardware. This is an open source project, so we're always looking for developers to help improve the game: https://github.com/freeciv/freeciv-web/ https://github.com/freeciv/freeciv-web/
- leojg 10y agoAwesome! Thanks for the hard work :)
- brownievan 10y agoWhat is the impact on the battery? That'd be my first concern for any WebGL game.
- BatFastard 10y agoI just fired it up on my VR machine, frame was good for short period I played it. Awesome work in converting it to 3D! Loved the water. I did find the movement to be abrupt. So much so that I found it disconcerting to play. I would suggest a quick transition from one location to another for the units (maybe optional). Does the 3D have animations on the models?
- Steuard 10y agoI don't know if this is a WebGL issue, a Mac issue, a Firefox issue (I use NoScript, but I've allowed scripts for the site and the rest of the game seems to work fine), or what, but I'm having absolutely no success in getting a middle click to do anything in the WebGL version of the game (like, say, show tile info). My mouse's middle click works fine in the 2D web version, but doesn't work here (nor does clicking right and left together). (Meanwhile, I have no idea what I'd do to get middle click info if I were just using the touchpad. Combining with cmd, ctrl, option, shift, etc. doesn't seem to do anything, apart from ctrl-click emulating a right click.) Am I the only one with this issue? Any thoughts on what might be going wrong?
- oelmekki 10y agoThe announcement page for beta (December 11th) : http://play.freeciv.org/blog/2016/12/freeciv-web-with-3d-webgl-version-in-early-beta-available/ http://play.freeciv.org/blog/2016/12/freeciv-web-with-3d-web... Interesting quote from this article (not to diminish the feat of a webgl version on classic screens, gg guys!) : > Support for virtual reality using Google Cardboard is also under development. Flying around a world and manipulating armies sounds awesome, kind of like "google earth VR meets strategy games". I guess freeciv will need game controller support first to make this playable, though.
- bhouston 10y agoNice! Some feedback from a Three.JS contributor: - I notice you are using Collada 3D model files inside of a zip file: https://play.freeciv.org/3d-models/models.zip https://play.freeciv.org/3d-models/models.zip It may be better to store the models in glTF format. It would be smaller and faster loading. Although to be honest, the last time I checked converting to glTF with high fidelity was very difficult to do. - You should probably have cache forever on your game assets (3d models, textures, etc.) but have version numbers or hashes (my preference) associated with them -- it will load faster. - Even if you do not switch to glTF, it might be better to have each Collada 3D model as a separate resource, so that as you change things it doesn't have to redownload the whole zip file. - It is weird that you have *.zip file. You can likely just serve the collada assets using the built-in HTTP gzip encoding: https://en.wikipedia.org/wiki/HTTP_compression https://en.wikipedia.org/wiki/HTTP_compression Thus it will be handled by a faster path in the browser than using a JS unzipper. - You may want a proxy scene of boxes to raycast against. Hit testing my simple scene takes 5ms and I have a top end computer. Ray casting against THREE.BufferGeometry in Three.JS is just unreasonably slow. And THREE.Geometry is just slow all around, even though raycasting is a bit faster than with THREE.BufferGeometry. Another approach is to render the scene a second time to the offscreen with unique colors per object. Then hit testing is just figuring out which color was at the pixel under the cursor. This is highly scalable and is a very commonly used technique in games.
- roschdal 10y agoThanks for the feedback! I'll try using the glTF format. I'm putting the Collada files in a zip file to save CPU resources on the server, since compression on the HTTP layer would use more server CPU. Also compressing all the models in a single zip file results in overall less bandwith usage, and bandwidth is limited on our server. Do you have more ideas about improvements?
- fulafel 10y agoYou can use pre-gzipped static files.
- 10y ago
- MarkPNeyer 10y agoit shows up in chinese for me - anyone else?
- roschdal 10y agoTry changing your browser language to English.
- MBCook 10y agoIs there a way to see it in action without starting a game? I don't want to end up with someone in a game with me I just plan to abandon since I only wanted to see it in motion.
- oelmekki 10y agoThere's a "single player 3d webgl" button on top of home page, you can use it to play against AIs.
- boobsbr 10y agoVery nice. I miss hotseat multiplayer so much. I loved playing Age of Wonders with my friends on the same machine.
- serf 10y ago"Please Don't Use these characters in your password : % # & ?" Please don't enforce password restrictions like this.
- Sohcahtoa82 10y agoSeriously. If you can't handle passwords with certain characters in them, you're probably doing something very wrong.
- brilliantcode 10y agois there a game engine that lets you create multiplayer browser based games like this? I'm also wishing to see a Freetotalwar type of project. The map campaigns are turn based and highly entertaining.