• What Are You Working On? April 2015
    1,741 replies, posted
[QUOTE=WTF Nuke;47465670]I've realized now that sponza should not take 3 minutes to load by anyone's estimate. I think I'm caving in and using this : [url]https://github.com/syoyo/tinyobjloader[/url] which loads sponza in less than a second. The only thing left for me is to pack the data to be interlaced and generate the tangents and bitangents. Which seems like a lot of work, so maybe I should change my own loader to use maps instead.[/QUOTE] The secret formula to loading anything fast probably involves not using obj's ... or any other text based format.
[QUOTE=Rocket;47465851]three years ago[/QUOTE] Isn't Garry's mod a lot more older than 3 years?
[QUOTE=Fourier;47468186]Isn't Garry's mod a lot more older than 3 years?[/QUOTE] That's his point.
[QUOTE=Fourier;47465803]Woah wait what is that? Some game before garry's mod?[/QUOTE] yeah, i made a lot of stuff in gmod back in the day and was fed up with api limitations and gmod doing its own thing design wise most of the time so i made an open-source api compatible version of the game called hl2sb and fully implemented luajit before that was standard for gmod, and allowed native lua modules to still be loaded and stuff like that [img_thumb]http://i.imgur.com/BO9qJ.png[/img_thumb] it was a mod more for people who wanted to tinker with source than it was for players [img]http://i.imgur.com/d9Mii.jpg[/img] the whole shebang was there, mounted every game, even ones not meant to be mounted [img]http://i.imgur.com/m4FKw.jpg[/img] [img]http://i.imgur.com/JGRCp.jpg[/img] we even had a fully custom physgun based on the same code used in gmod, from adnan's rotational gravity gun. i reached out to adnan and explained what i was making, and he got back to me with the full source for his mod, which apparently you can only get a hold of by emailing him i used to have a lot more shots of what i did with hl2sb, which had some team members in it which are a part of planimeter today, back when i called us team sandbox in every sense of the word it was an open-source gmod with a lot more developers features and an api more aligned with source's internal code since i was more concerned with replicating developer functionality and api concerns, game functionality was not a priority and i never finished up the default gamemodes other than stuff that wrapped around deathmatch and team deathmatch we also had lcf files, or lua cache files, that were based on xzip code source included, and thousands of bindings, and nearly every hook in gmod, plus some that gmod didn't even have half life 2 campaign worked out of the box, an ai code was entirely patched to work in multiplayer i also had plans to patch the saverestore system to work in multiplayer but that was towards the end of development and eol for the mod i was really proud of my work and the mod was very small despite being functionally packed to the brim, in just around 10k lines of code added to 2006, then ported to 2007 for demos, i recreated a lot of some of the more impressive gmod projects of the day, showing how much easier it was to develop in hl2sb because you didn't have to deal with gmod's custom module system i even wrote native lua modules that bound into things like window's sapi to recreate that harry potter project that was never released [url]https://www.youtube.com/watch?v=Rm8M8PqiE5k[/url] grid is now actually twice the size of hl2sb [url]http://www.andrewmcwatters.com/grid/[/url] and i'm still working on it i learned a lot about source back then, and that knowledge does actually carry over into every other major engine, including designing your own even to this day it compiles out of the box, no problems but the state of 2006 and 2007 mods is very grim, and a majority of works created by some of the best people in the source modding community no longer function at all due to major steam integration reworks i could patch up some minor and major things in hl2sb, but regardless of all my work and all of the feature replication, it was only worth it for me, and it didn't gain enough traction for me to stick with the project after steampipe was introduced, breaking all game mounting to this day i speculate that garry only got game mounting working in early versions of gmod due to having leaked valve code, or an insider from valve told him how to do it there's no way in source that i know of to reliably mount games without the filesystem interface failing on you and closing the engine if you don't own the game, so you have to mount the games' contents from steam's interfaces very fun project though, maybe one day i'll port it to 2013 or get lucky and someone else will [editline]6th April 2015[/editline] wow im missing a lot of screenshots of cool stuff since i deleted my account on photobucket what a shame whatever i guess
I wanted to have a play about with integrating Lua into Unity as I've never used Lua before. Made the basics of a little programming battle game this weekend! Each ship is running a different Lua script to control their behaviour. [vid]https://s3-eu-west-1.amazonaws.com/files.facepunch.com/adam/2015/April/06/bb_small.mp4[/vid] Ships have health and energy (energy recharges) and firing or using your shield uses your energy. Might add a booster, powerups, and some basic effects and a less-shit camera.... and make other stuff less shit too... and maybe a propper screen to select which bots you load in... Maybe. Probably not :)
[QUOTE=Darwin226;47467526]Am I a bad person if I immediately start thinking how I could use those hacks to do magical things? So far I've only seen the first part with savable await state. It actually seems like an extremely useful thing if you can encapsulate it into something usable. You could actually backtrack to a valid state on some error. That sounds amazing![/QUOTE] Right, but you can do that using loops and try-catch too, if your code isn't terribly messy. I was pretty close to doing the "[[I]await SuspendToDisk();[/I]]" thing once but then didn't continue contributing to the project. There are some async capture methods in PlanckZeit, but they use neither neither reflection nor exceptions to that end so they are reasonably fast still. (I may do some IL weaving to replace the task construction on the scripts with a faster but less safe class eventually though. Almost all overhead is currently from [I]Task[/I] resumption.) I was trying to make "SkeetLinq", but I have some trouble with adding operators that have an additional generic parameter. I wonder if that's possible at all.
oh sorry about the wall of text, but another thing that really hurt hl2sb development was lack of solid documentation for people who worked with the mod really only the best gmod developers i knew at the time could wrangle hl2sb's lua api, hentie made a full blown spawn menu with generated spawn icons and shit i was totally blown away, it was more impressive than most things i saw come out of the gmod community i think i insulted him by not including his work as-is in hl2sb but it was never polished despite how good it was, and hl2sb had a really high standard for code reviews we don't talk much anymore and i feel bad about it, because he's one of the best devs i know, i hope i didn't hurt his feelings or piss him off, but to this day i think i did, and i didn't mean to, i just wanted the game to have a high degree of polish, like everything else i do he contributed to building the lua cache file system for hl2sb, which was more performant that gmod's by orders of magnitude. he also designed vphysicsobject handles for the mod, along with many other things all of the people from team sandbox/planimeter ended up contributing so much to source in the modding community that our code was eventually reused in different commercial source engine games and mods, and people came to us to ask if they could use the underlying lua integration for their games. universities contacted me about the scripting language integration, and startup companies asked for my expertise in source for commercial projects hl2sb's documentation was comparable to where grid's alpha documentation is right now, and i want way more for grid. if you're interested in contributing, or using the engine, because im very serious about development and future outreach for the project, please contact me or feel free to shoot issues or ask questions here or on github i'd ideally like to compensate developers for writing documentation or submitting prs for grid or whatever, because one day i want the project in a place where i can post in on hacker news, designer news, reddit, and love's forums and manage outreach in all of those places hl2sb was a massive project for me at the time, and i'm trying to do multiple times more than that with grid and vertex adventure i didn't let a lot of people in or do enough outreach, though. so i hope to learn from that. a lot of people ridiculed hl2sb years ago saying it was pretty dumb but i stuck with it, and never saw any of the people putting me or the project down do anything serious development wise here, and most of them eventually left, and to go on not actually doing anything either i don't see it as much here anymore, but on the same note, please don't put people down in waywo, ever. it was really hard at the time for me, and although i was only a bit younger, i was in a much different place than i am now lots of rambling, sorry
[QUOTE=AtomiCal;47467590]Hey I was at this talk :D Went to it when I was supposed to do crew stuff because !!![/QUOTE] Do you happen to know if he uploaded the project somewhere? The recording is cut off, unfortunately.
i remember putzing around in HL2SB back when it was new here in WAYWO, had a bit of fun messing around :v: kinda sad that it didn't get more attention from developers but you win some and you lose some i guess. on that note it is cool to you that you've made so much progress on Grid and i'm sure i'm not the only one that's happy to see progress on it :)
[QUOTE=Quark:;47468705]i remember putzing around in HL2SB back when it was new here in WAYWO, had a bit of fun messing around :v: kinda sad that it didn't get more attention from developers but you win some and you lose some i guess. on that note it is cool to you that you've made so much progress on Grid and i'm sure i'm not the only one that's happy to see progress on it :)[/QUOTE] thanks dude, that really means a lot to me i value your guys' input; you gotta do it for yourself, but hearing from others makes waywo so great
[QUOTE=Tamschi;47468572][...] I was trying to make "SkeetLinq", but I have some trouble with adding operators that have an additional generic parameter. I wonder if that's possible at all.[/QUOTE] ...ohhh, he's using [I]dynamic[/I]. That's terrible :v:
[IMG_THUMB]https://s.paste.ninja/2015-04-06_18-46-05.png[/IMG_THUMB] Working on using JavaScript in my current Android app, written a fairly simple binding library for Duktape to C#, and then using Xamarin.Android to run this on my phone. Means however I can do the above with just [CODE]UI.showToast('Hello world from JavaScript', true); UI.showNotification('JavaScript', 'Can also show notifications');[/CODE] And the binding is fairly simple too [CODE]public static class UIModule { public static void showToast(string message, bool l) { Toast.MakeText(AutoApp.Context, message, l ? ToastLength.Long : ToastLength.Short).Show(); } public static void showNotification(string title, string text) { Notification notification = new Notification.Builder(AutoApp.Context) .SetContentTitle(title) .SetContentText(text) .SetSmallIcon(Resource.Drawable.Icon) .Build(); NotificationManager nm = AutoApp.Context.GetSystemService(Context.NotificationService) as NotificationManager; nm.Notify(0, notification); } }[/CODE]
[QUOTE=adnzzzzZ;47467072][VID]https://a.pomf.se/mtlopz.webm[/VID] does anyone know a cute font?[/QUOTE] I see the persona 4 inspiration
A twitch bot, which will hopefully be reeking havoc very soon. [t]http://puu.sh/h445P/51f87fc4f4.png[/t] Trying to up my C# skills, and I'm doing fine I suppose. :v:
[img]http://a.pomf.se/trprnj.gif[/img] Made a handy dandy little converter for tedious calculus homework. [sp]then i remembered most of the answers involve roots and pi and then i killed myself[/sp]
[QUOTE=Rocket;47470711]Is it just me, or do most of John Carmack's tweets sound like a markov chain seeded with Hacker News comments? [IMG]http://i.imgur.com/RnwhxXG.png[/IMG][/QUOTE] Perhaps that's what he's really been working on all the time, and all these projects he keeps getting dragged into is just him trying to not blow his cover cause he doesn't really have anything to show for his real project? [B]edit:[/B] I mean it is Carmack, it would make sense that he would accidentally make a rocket and advance virtual reality several years by accident, just trying to some Markov chains going
[QUOTE=NixNax123;47470815][img]http://a.pomf.se/trprnj.gif[/img] Made a handy dandy little converter for tedious calculus homework. [sp]then i remembered most of the answers involve roots and pi and then i killed myself[/sp][/QUOTE] This would be the perfect opportunity to try some parsing and symbolic calculations :eng101:
[QUOTE=Tamschi;47471103]This would be the perfect opportunity to try some parsing and symbolic calculations :eng101:[/QUOTE] I have made a recursive descent parser before (albeit almost a complete copy of a tutorial) that supports basic operations, but I quit when I couldn't figure out how to accomplish my end goal (symbolic calculations, and (further down the line) differentiation/integration). I don't want to imagine how hard it would be to naturally factor out roots and multiples of pi. [editline]6th April 2015[/editline] I would love to try to start on a new project and actually accomplish that, though.
[QUOTE=NixNax123;47471116]I have made a recursive descent parser before (albeit almost a complete copy of a tutorial) that supports basic operations, but I quit when I couldn't figure out how to accomplish my end goal (symbolic calculations, and (further down the line) differentiation/integration). I don't want to imagine how hard it would be to naturally factor out roots and multiples of pi. [editline]6th April 2015[/editline] I would love to try to start on a new project and actually accomplish that, though.[/QUOTE] Roots/exponentiation and multiples of pi follow the same rules as other factors, so you can extract them the same way as prime factors. Integrals definitely get ugly really quickly though and derivatives have some special cases.
[QUOTE=Tamschi;47471627]Roots/exponentiation and multiples of pi follow the same rules as other factors, so you can extract them the same way as prime factors. Integrals definitely get ugly really quickly though and derivatives have some special cases.[/QUOTE] I know that, but how do you handle roots, etc without making individual special cases? I kind of just want to be able to handle symbol symbolic calculations (e.g. x + x -> 2x, x + 5 -> x + 5), and then I can focus on implementing rules of differentiation/integration.
Last year I made a software renderer in the Windows console, but it wasn't very good and had some bugs. (That's my facepunch account, I logged out and forgot which email and password I used [IMG]http://fi.somethingawful.com/images/smilies/emot-v.gif[/IMG]) [QUOTE=acarvromvroom;45912588]Well I'm making this: [video=youtube;RaBA6Mkis1g]http://www.youtube.com/watch?v=RaBA6Mkis1g[/video] It's a software renderer that uses the Windows Console as output. Since it's a software renderer it doesn't use OpenGL or anything like that, it's all done on the CPU. I plan to implement some kind of shading, although it will be low quality since in the console you can only have 16 colors at each moment. [/QUOTE] I'm on spring break now and I've been rewriting it from scratch, I managed to halve the pixel size, and I can go even lower with other fonts but at that point there's console bugs, lines start showing between chars and the background color starts to blend with the foreground color for some reason. Anyway, I don't have much to show yet, I plan on making another video when I'm done. But I've been making good progress, here is some content: [THUMB]http://i.imgur.com/bsrWxPK.gif[/THUMB] (The fps IS low, that model has a lot of triangles, but the GIF doesn't do it any justice, it's a bit faster than that) [THUMB]http://i.imgur.com/fXb8ETg.gif[/THUMB] And also this time I've implemented a camera: [THUMB]http://i.imgur.com/BSafayL.gif[/THUMB] (I haven't done polygon clipping yet either) I'm sorry for the GIFs, it isn't that slow in reality, the gourd spins smoothly. But my raster is kinda inefficient as you can see from the bunny, I wish I could make it faster. Here is a [B]lower poly[/B] bunny in video form so you can get a sense of the speed: [vid]http://dl.dropboxusercontent.com/u/25639311/ShareX/2015/04/2015-04-07_03-03-09.mp4[/vid] I'll post more content when I fix the clipping and do lightning. I might also do textures but I'm not really sure if it's worth it, there's only 16 colors and the lightning will probably occupy them all with a grey scale palette.
[QUOTE=KaPow!;47471777]-console renderer-[/QUOTE] I assume this uses WriteConsoleOutput to draw to the buffer? Looks nice. Can't wait to see Wolfenstein 3D remastered in Command Prompt.
[QUOTE=Cold;47468151]The secret formula to loading anything fast probably involves not using obj's ... or any other text based format.[/QUOTE] Whilst I agree entirely, I managed to trim off ~60-90 seconds from the actual computation, making it go from 60-90 seconds to sub 1.
Just wanted to share a fix for something that was annoying the hell out of me, so maybe some of you guys will find it useful too! Trying to clone something to desktop with GitHub but the 'Clone in Desktop' button doesn't work? Drag the URL into GitHub desktop. Ta da! [t]http://i.imgur.com/dWZy2XW.png[/t] [editline]7th April 2015[/editline] thx to [url]http://joe.blog.freemansoft.com/2014/04/github-clone-to-desktop-with-windows.html[/url]
"But Rick, a single gun can't shoot in all those directions!" "But Rick, smoke and fire like that would dissipate quickly in space" It can if you just believe. [img]http://i.imgur.com/kjbq7Da.png[/img] [img]http://i.imgur.com/H3oaNYp.png[/img]
[QUOTE=MattJeanes;47472258]Just wanted to share a fix for something that was annoying the hell out of me, so maybe some of you guys will find it useful too! Trying to clone something to desktop with GitHub but the 'Clone in Desktop' button doesn't work? Drag the URL into GitHub desktop. Ta da! [t]http://i.imgur.com/dWZy2XW.png[/t] [editline]7th April 2015[/editline] thx to [url]http://joe.blog.freemansoft.com/2014/04/github-clone-to-desktop-with-windows.html[/url][/QUOTE] I'm more interested in the fact that you bookmark commit diffs.
Well I finally feel good enough about this to share it. I've been working on a TV series tracking program. Basically you add the shows you are watching, check off episodes you seen, and when a new episode is out you can see it. I dont watch TV live because its more convenient to downl- watch legally later so its a hassle to search episode release dates. This uses themoviedb.org to fetch show information (seasons, episode names, release dates, whatever) and is build in C# using WPF. Its pretty much my first project in C# and WPF has a bit of a learning curve for me so internally its horrendous. My exceptions just say 'kill me'. Regardless, I'm happy that this is working (and that it isn't Java like all my other stuff). [IMG]http://i.imgur.com/MIxCCCe.png/[/IMG] I'm not sure where I want to take it from here. Its pretty inefficient currently. It has to fetch all the information each time its opened. I could fix this by saving the results and updating them as necessary but that would require me understanding XML serialization in C#. Any suggestions or feature requests to give me some direction here? Thanks
Make it like [URL]https://popcorntime.io/[/URL] except maybe without the streaming part because that's probably hard.
[QUOTE=adnzzzzZ;47472613]Make it like [URL]https://popcorntime.io/[/URL] except maybe without the streaming part because that's probably hard.[/QUOTE] Please don't make it like popcorntime, that ui is clunky as all fuck. His ui is fine, I like it a lot more.
[QUOTE=ryan1271;47472543]Well I finally feel good enough about this to share it. I've been working on a TV series tracking program. Basically you add the shows you are watching, check off episodes you seen, and when a new episode is out you can see it. I dont watch TV live because its more convenient to downl- watch legally later so its a hassle to search episode release dates. This uses themoviedb.org to fetch show information (seasons, episode names, release dates, whatever) and is build in C# using WPF. Its pretty much my first project in C# and WPF has a bit of a learning curve for me so internally its horrendous. My exceptions just say 'kill me'. Regardless, I'm happy that this is working (and that it isn't Java like all my other stuff). [IMG]http://i.imgur.com/MIxCCCe.png/[/IMG] I'm not sure where I want to take it from here. Its pretty inefficient currently. It has to fetch all the information each time its opened. I could fix this by saving the results and updating them as necessary but that would require me understanding XML serialization in C#. Any suggestions or feature requests to give me some direction here? Thanks[/QUOTE] You could use [URL="http://www.newtonsoft.com/json"]Json.NET[/URL] to cache the results. It's extremely easy to learn and set up. It also has a NuGet package, so you can install it from the package manager console.
Sorry, you need to Log In to post a reply to this thread.