• What are you working on? November 2015
    964 replies, posted
  • [QUOTE=war_man333;49102073]How? SketchUV is not really helping here. Working on a general colorpicker for Unity which will closely resemble the one in Photoshop, which I hope to release for free on the asset store: [vid]http://s1.webmshare.com/gQR3m.webm[/vid] god damn music stop going in my videos[/QUOTE] i will love you forever if you release this. The one i'm using is terribad.
  • I don't know how sketchup's UV stuff works, but in a normal 3D editor that loop would pretty much be as simple as cutting it in half (so you have both sides separated) and passing the two sides through cylindrical mapping.
  • Decided to add a quick shader editor to my project. Probably not going to add folder management or anything fancy, just a quick editor: [img]http://i.imgur.com/R9hliQK.png[/img]
  • [QUOTE=Arxae;49103291]Decided to add a quick shader editor to my project. Probably not going to add folder management or anything fancy, just a quick editor: [img]http://i.imgur.com/R9hliQK.png[/img][/QUOTE] Which GUI engine is that? Looks nice.
  • [QUOTE=war_man333;49102073]How? SketchUV is not really helping here.[/QUOTE] I would suggest using a tool that is intended for polygonal modelling/texturing/animation, i.e. not sketchup. Blender is a great free tool that is just as capable as any of the big software packages, but if you want to learn something more professional grade I suggest getting your hands on Maya (personal preference), or 3DS max. Sketchup simply isn't intended for that kind of modelling, and I can't believe people bother to try to do stuff like UVing in it...
  • [QUOTE=Berkin;49102187]Yes, formant synthesis... Kind of. I'm using a heavily-modified sample of my voice as the basis, running it through a series of band-pass filters to create the formants.[/QUOTE] Well it's a progress, you can almost make machines that rant now :)
  • [QUOTE=Fourier;49103580]Well it's a progress, you can almost make machines that rant now :)[/QUOTE] That's the plan.
  • [QUOTE=Socram;49103484]I would suggest using a tool that is intended for polygonal modelling/texturing/animation, i.e. not sketchup. Blender is a great free tool that is just as capable as any of the big software packages, but if you want to learn something more professional grade I suggest getting your hands on Maya (personal preference), or 3DS max. Sketchup simply isn't intended for that kind of modelling, and I can't believe people bother to try to do stuff like UVing in it...[/QUOTE] I've found Modo to be quite a nice alternative to 3DS Max. Definitely worth a go if you get a chance.
  • Berkin, are you using this for reference? [url]http://accent.gmu.edu/[/url]
  • [QUOTE=Berkin;49103402]Which GUI engine is that? Looks nice.[/QUOTE] It looks like WPF to me.
  • [QUOTE=Ithon;49103697]Berkin, are you using this for reference? [url]http://accent.gmu.edu/[/url][/QUOTE] I've never heard of this site before, but it does look useful. I'll check it out, thanks!
  • [QUOTE=Proclivitas;49103723]It looks like WPF to me.[/QUOTE] It's indeed WPF, using MahApps for the window frame and MaterialDesignInXamlToolkit (yes, that's the actual name :p) for some Material stuff (although not very apparent here). And for completions sake, the syntax highlighting uses AvalonEdit
  • [QUOTE=Arxae;49104008]It's indeed WPF, using MahApps for the window frame and MaterialDesignInXamlToolkit (yes, that's the actual name :p) for some Material stuff (although not very apparent here). And for completions sake, the syntax highlighting uses AvalonEdit[/QUOTE] Honestly, if WPF wasn't restricted to one platform and was a bit more user-friendly, I might consider using it. [URL="https://github.com/Perspex/Perspex"]Perspex[/URL] looks promising, though (albeit early in development).
  • I'm working on remaking my shitty Lexer/RPN Evaluator thing in Java. Thanks to Berkin's advice, I got a better way to tokenize an expression and then it took me half of the day to make it actually sort the tokens, because I didn't assign the return value of the sort function to anything. For this input, [code]_number = new _Number( 5 )[/code] the program outputs this: [code]<_number,VARIABLE,0> <=,OPERATOR,8> <new,VARIABLE,10> <_Number,VARIABLE,14> <(,OPERATOR,21> <5,NUMBER,23> <),OPERATOR,25> [/code] My code is currently extremely ugly, due to me just trying to brute force my way to a working implementation.
  • [QUOTE=Berkin;49104186]Honestly, if WPF wasn't restricted to one platform and was a bit more user-friendly, I might consider using it. [URL="https://github.com/Perspex/Perspex"]Perspex[/URL] looks promising, though (albeit early in development).[/QUOTE] I don't mind the single platform that much. But i do dislike the binding system. It's not that it isn't powerful, but getting into it is quite the effort. And on in a "oh no, effort" kinda way. You can do everything in at least 3 ways, 2 of which need more code and complexity then just directly updating the ui.
  • [QUOTE=HumbleTH;49104221]I'm working on remaking my shitty Lexer/RPN Evaluator thing in Java. Thanks to Berkin's advice, I got a better way to tokenize an expression and then it took me half of the day to make it actually sort the tokens, because I didn't assign the return value of the sort function to anything. For this input, [code]_number = new _Number( 5 )[/code] the program outputs this: [code]<_number,VARIABLE,0> <=,OPERATOR,8> <new,VARIABLE,10> <_Number,VARIABLE,14> <(,OPERATOR,21> <5,NUMBER,23> <),OPERATOR,25> [/code] My code is currently extremely ugly, due to me just trying to brute force my way to a working implementation.[/QUOTE] new is a keyword not a variable!
  • Trying to get visibility.. not working so well Its a 2d tile based system, here is what I'm getting: [img]http://i.imgur.com/KlGzBIK.png[/img] Here is without the raytracing [img]http://i.imgur.com/KG80h6S.png[/img] appears a bit off...
  • I decided to start reworking my grass/ground level foliage billboarding system. [t]http://i.imgur.com/Ja9FR7Z.png[/t] It works mostly the way I want it. They tilt towards the camera as well as take into account the normal of the surface they are on. Super easy to generate this time around.
  • [QUOTE=Map in a box;49104805]new is a keyword not a variable![/QUOTE] I know, I was just trying to get it to work first.
  • I got resource network interlinking together. So basically you build a resource network, and it links together all the resource processing or storing things together underneath its dominion. I then added the ability for resource networks to connect to resource networks, did a bit of graph stuff, and now you can build whole chains of connected resource networks with all the resources dutifully shuffled between the semi-separate networks Example showing power cells being filled up by a solar panel on a different network. The circles represent what the resource network can influence [IMG]https://dl.dropboxusercontent.com/u/9317774/resourcenetworks.PNG[/IMG] Updated version with a slightly better looking interface (might be too transparent). At the moment resource networks have to actually include the other resource network, but i might change it so only their spheres of influence have to overlap [IMG]https://dl.dropboxusercontent.com/u/9317774/yaaay.PNG[/IMG] I also discovered that sfml's shape rendering AA only supports supersampling which is less than ideal, so while it looks pretty, performance is now struggling with a lot of circle objects [editline]13th November 2015[/editline] So it turns out that I completely forgot to post about my smoke rendering project for my dissertation. To everyone that forgot (I can't believe you've done this), the idea was to take lower resolution smoke with very little turbulence, and then 'upscale' it to a higher resolution with a lot of turbulence in. The principle is that it should be a lot cheaper to fake high resolution smoke, and you actually don't care about the quality of the smoke simulation, and that it should all be gpu accelerated through opencl (worked cross platform in the end, intel + amd + nvidia somehow) and run in realtime without eating too much memory So, the final result is that it worked, and it was something like twice as fast to use my gpu accelerated method than to simulate the higher resolution smoke The most important part though, here are some pictures No extra turbulence [IMG]https://dl.dropboxusercontent.com/u/9317774/noscale.PNG[/IMG] Only high frequency turbulence [IMG]https://dl.dropboxusercontent.com/u/9317774/onlysmall.PNG[/IMG] Only low frequency [IMG]https://dl.dropboxusercontent.com/u/9317774/largescale.PNG[/IMG] Both (with low roughness, basically my ideal result here) [IMG]https://dl.dropboxusercontent.com/u/9317774/lowerrough.PNG[/IMG] Both (with lower roughness) [IMG]https://dl.dropboxusercontent.com/u/9317774/lowrough.PNG[/IMG] pew pew pew [IMG]https://dl.dropboxusercontent.com/u/9317774/mixedextremelyhigh.PNG[/IMG] This tunnel contains no natural turbulence at all, its just a shitty completely smooth simulation upscaled to look turbulent. This one was taken to highlight the fact that it can turn blocky with too high a roughness [IMG]https://dl.dropboxusercontent.com/u/9317774/blockyness.PNG[/IMG] I was marked down for being unable to objectively show that high turbulence smoke looks better than completely smooth smoke. I mean, I'm not sure what they wanted from me, more turbulence is sort of just obviously better. Oh and, it wasn't theoretical enough apparently, I treated the equations as black boxes and focused on the implementation too much, despite the equations being derived by pixar (who wrote the only two papers that exist on what I was doing), and despite the entire point being whether or not it was technically feasible to do in realtime (pixar used a cpu implentation for their films, I modified it to run in realtime on a gpu!) but what are you going to do
  • [media]https://www.youtube.com/watch?v=ki33dVo-0KM[/media] [editline]13th November 2015[/editline] feel I should mention that the art/sound assets are all goonstations
  • [QUOTE=Map in a box;49107715][media]https://www.youtube.com/watch?v=ki33dVo-0KM[/media] [editline]13th November 2015[/editline] feel I should mention that the art/sound assets are all goonstations[/QUOTE] This profoundly changed my views on life
  • I'm about halfway or so with the colorpicker. Still need to do a slider for alpha and enable the user inputs. Most of the tough shit is done... and I also need to clean up the code :v: [vid]http://s1.webmshare.com/E340x.webm[/vid] Some things are not completely correct though, like the slider changing color when you're sliding it. That shit ain't right.
  • I'm starting to learn about neural networks and trying to implement a simple perceptron that can be taught to perform basic logic operations such as OR, AND. What I don't get is the need for a bias node. Is the weighted bias node value supposed to represent the activation function threshold?
  • So I've been working on a networking framework for Python. Here's the maximum amount of code needed for an echo server: [code] import asyncio from bfnet import ButterflyHandler, Butterfly # Create your event loop. loop = asyncio.get_event_loop() @asyncio.coroutine def main(): my_handler = ButterflyHandler.get_handler(loop, log_level=logging.DEBUG, buffer_size=4096) my_server = yield from my_handler.create_server(("127.0.0.1", 8001), ("localhost.crt", "server.key", None)) @my_server.any_data @asyncio.coroutine def echo(data: bytes, butterfly: Butterfly, handler: ButterflyHandler): butterfly.write(data) if __name__ == '__main__': loop.create_task(main()) try: loop.run_forever() except KeyboardInterrupt: exit(0) [/code] Much simpler compared to the standard asyncio networking stuff. Plus, it's secure automatically (forces TLS for all connections by default with secure settings enabled), and fully asynchronous, because it's based on asyncio. Here's a more meaty example for a simple chatroom: [code] import asyncio from bfnet import Butterfly, ButterflyHandler # Create your event loop. loop = asyncio.get_event_loop() class MyHandler(ButterflyHandler): @asyncio.coroutine def on_connection(self, butterfly: Butterfly): # Here we re-purpose the Butterfly dict. # Read in their nickname. butterfly.write(b"Nickname: ") nick = yield from butterfly.read() nick = nick.rstrip(b'\n').rstrip(b'\r') # Tell the others somebody has connected. self.logger.debug("{} has joined".format(nick.decode())) for bf, _ in self.butterflies.values(): bf.write(nick + b" has joined the room\n") # Set the `nick` attribute on the Butterfly. butterfly.nick = nick # Begin handling normally. fut = self.begin_handling(butterfly) self.butterflies[nick] = (butterfly, fut) @asyncio.coroutine def on_disconnect(self, butterfly: Butterfly): # Override the on_disconnect to cancel the correct futures. if not hasattr(butterfly, "nick"): self.logger.warning("Connection cancelled before on_connect finished - will be killed soon!") return if butterfly.nick in self.butterflies: bf = self.butterflies.pop(butterfly.nick) bf[1].cancel() @asyncio.coroutine def main(): my_handler = MyHandler.get_handler(loop=loop, log_level=logging.DEBUG) my_server = yield from my_handler.create_server(("127.0.0.1", 8001), ("localhost.crt", "server.key", None)) # Define our simple coroutine for handling messages. @my_server.any_data @asyncio.coroutine def _handle_data(data: bytes, butterfly: Butterfly, handler: ButterflyHandler): for bf in handler.butterflies.values(): if bf[0] != butterfly: bf[0].write(butterfly.nick + b": " + data) [/code] Pretty damn neat compared to Twisted (a clusterfuck), raw sockets (ew) or asyncio's default networking.
  • Writing a paper on a project and i found this gem: [url]http://www.visuwords.com[/url] Please, Berking, make one that doesn't crash every 2 seconds. [editline]13th November 2015[/editline] It's so useful [img]http://i.imgur.com/oVyI1od.png[/img]