Phobos002's Forum Posts

  • I've gotten it to work before, just not reliably (changes from Chromium and NWjs version). I'll pitch it as an idea, since Ashley and the gang know WebGL inside and out and probably know the answer to this (although it looks like VSync would have to be either on or off for the whole project, not being able to change it at runtime)

    Thank you for your time!

  • If you want to pull data from sensors you would need a plugin to interface with the hardware (If the browser supports it anyways), then it's easy to manipulate and format the data to what you need it in.

    But if you have data collected already - like in a file, but it's not in JSON or XML - you could use the token functions to split the text and parse the data into a format easier to use in Construct, like a formatted array.

    BINARY data is much harder though; Construct does not have native support for reading binary from disk. You could pull everything in as bytes, but for numbers like 16/32 bit ints (2/4 bytes), floats (4 bytes), and doubles (8 bytes, and more likely to run into if you're getting data collected for science), you'll need to find out what's what and use setbit and getbit on variables to rebuild them. This is far and beyond what you want to work with, so I recommend using a tool to reserialize the numbers into strings, which Construct can parse natively (Not sure about double precision though, or especially large numbers)

    Things like overhead pictures of cities and streets - like in the Google maps example you described - can scraped (read pixel by pixel) and used to associate colors to a tile in a tilemap, but a combination of edge detecting algorithms and grouping would lead to the most efficient results. Again, this is hard, but still possible to do.

    It's possible to do, but if you're doing it from scratch it's going to be a lot of work depending on what you're doing. If you can't find a plugin for the hardware you want to use, or to get data from a server in a format you can use, and you REALLY want to do it, you'll have to dig deep and either make a plugin for it or use events.

  • Hello! After playing with Unity for a long time and learning a lot of lower-level stuff, I've come back to make a new Construct project.

    But this has been bugging the hell out of me for the longest time: How do you reliably disable VSync for exported games in NW.js?

    I noticed that when I had VSync disabled in Unity (Originally to measure performance better) my input was much more responsive and less floaty. This is because the CPU isn't waiting for the GPU and Monitor to finish, and can update the game as fast as it wants.

    You can ask Chromium/NWjs politely to turn VSync off using --disable-gpu-vsync as a launch parameter, but it only works sometimes in my experience. I think this is a bug in chromium more than anything, but I'm not so sure.

    For fast-paced games you want player input to be as tight and responsive as possible. Otherwise I wouldn't care, but I feel this will improve my game feel dramatically, and I'm willing to have slight tearing if it means the player can be less frustrated.

    I know this is an advanced topic, but any insight or experience shared will be very appreciated.

    Thank you very much for your time. If you have any more questions feel free to ask. Have a wonderful day!

  • I'm going to be keeping a very close eye on this! Using Construct 3 in a chromium shortcut gives it a mostly desktop feel, but opening project folders instead of .cap files and working with larger files in general is really exciting.

    I don't have a copy of windows installed anymore, so I can't help beta test (I could use wine but that might bring bugs that don't work natively). Best of luck with the project, and thank you for such great game making software!

  • Hello! Bullet-Point is a game I'm making for the Ludum Dare October Challenge! I have uploaded the game - in a WIP state - to itch.io for people to try. Here's some goodies:

    Level 1 and Tutorial -

    Subscribe to Construct videos now

    Level 3 -

    Subscribe to Construct videos now

    Small part of Level 2 -

    Subscribe to Construct videos now

    You can download the game here: http://phobos001.itch.io/bullet-point?s ... j31drwj8ec

    Music was made by Pitfall! You can find his soundcloud here: http://www.soundcloud.com/pitfall-3

    Let me know what you guys think!

  • This is a game I'm making for the Ludum Dare October Challenge :> I'm planning ten levels. Let me know what you guys think!

    Subscribe to Construct videos now

    (Part of Level 2)

    Subscribe to Construct videos now

    (All of Level 1)

    Subscribe to Construct videos now

    (Showing off Cutscene Skipping and Level 3 Background)

    Subscribe to Construct videos now

    (All of Level 3)

    The music was created by Pitfall! You can find his SoundCloud here!

    Download the game here: http://phobos001.itch.io/bullet-point

    Questions and advice are also welcome :happy:

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • It's a neat effect! I never got past about 17% on it for CPU use, though I could see it really tanking some older computers. I really don't know a better way to do it, though. Your way looks more polished than how I would've attempted it.

    Well, recently I've created a much, MUCH more optimized way to handle it, but now it uses a megaton of objects (Over 300 objects with 12 entities for a 24 sample size ._.)

    Take a peek: https://dl.dropboxusercontent.com/u/214 ... index.html

    Here's the src: https://dl.dropboxusercontent.com/u/214 ... ur2.0.capx

    Let me know how well it runs on your end ^^

  • I'm really excited to see this Motion blur effect with more optimization.

    I am going to try to do the same thing with only sprites and see if it runs any faster. Hopefully it does and we will all have a happy ending

    EDIT: It's a LOT faster, but it uses a LOT of objects. (25% CPU with 12 entities (24*12 = 288 objects) instead of 50% CPU with 9 entities) Need to find a way to use less objects ._.

  • Hello! I've decided to try to make a motion blur effect, but due to the lack of shader knowledge, I have created this using R0J0hounds Paster plugin:

    https://dl.dropboxusercontent.com/u/214 ... index.html

    There are some artifacts due to how the effect is processed, and it's a serious CPU hog when it comes to multiple objects. The effect works well though, so it's a good start.

    I was thinking about storing some previous positions and using a curve of some sort to get a much more natural look when moving objects very quickly, but I've got quite a bit of HW I have to get done before tomorrow as well, so it'll have to wait.

    Here is the capx: https://dl.dropboxusercontent.com/u/214 ... ample.capx

    Let me know what you guys think, and have an awesome day! ^^

    EDIT: Something is wrong with the CPU meter, and I'm not sure why. On the Angular example (9 Objects), it uses 50% of my CPU on Node-Webkit. On the Drag (1 object) example it uses a good 8%. Is there a better way to do this?

  • Not as an effect, but very recently I made a very decent Motion Blur using R0J0's paster object. The problem is that it's currently a CPU hog and I'm not sure in what ways I can optimize it. I am going to make a thread about it and give the capx for it and see what ideas the community might have. <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">

    You can see it right now here: https://dl.dropboxusercontent.com/u/214 ... index.html

    There are a a few artifacts (Transparancy and rounded pixels) but I'm sure there's a way around it. Let me know what you think!

  • Sorry about the delay; I'm going to college this fall and I've been busy making sure everything is ready. I'll try my best to reproduce it and keep it simple. Hopefully then this can all be straightened out, one way or another

  • Alright, I must have been tired last night because I didn't correctly explain how to reproduce the issue. I'm really sorry for making this a huge hassle, but I'm trying my best ._.

    Using WASD or Arrow keys, move the player to the right side of the layout. Then aim to the left and fire. Notice how the hitscan stops at the very last wall instead of the one closest to the player, but when firing from left to right, it works fine (???). R173 didn't have this problem (I removed the wall limit for sake of simplicity):

    R173:

    R175:

    And if you try to hit an enemy (the red squares) with a hitscan, it returns a distance of 0. Not sure why this is happening, but I'm still trying to minimize things some more (ran into some issues when I accidently saved in R175 -_- ) and comment how the system works. I'll get back to you if I find out anything else, or if I realized I forgot something again

  • I tried it in both r173 and r175 and it appears to work similarly in both cases. Looks like it traces the line through two blocks? Can you explain in more detail exactly what the difference you are seeing is? Also it is difficult to debug a project with 46 events - can you reduce this to a minimal repro that shows the fewest events possible that still demonstrate the change in behavior? Or can you describe which particular event or part of the events are working differently?

    I'll try my best to reduce it some more. I was initially worried about breaking it when moving stuff around and deleting objects, so I'll simplify it and re-upload the new capx file.

    I also seemed to have had a stroke and didn't explain what I was trying to achieve with this system, so I'll do that now: Better Instant Bullets/Rays

    I saw the 'Instant Laser' example (Small object stepping forward a few pixels, checking for collision, and stepping again if it didn't hit anything) and tried to apply it to other uses, such as instant bullets and checking if a player can activate a switch or open a door. I wasn't satisfied with the performance and inaccuracy this method used, so I took a look at other games to see how they handle it, specifically the Doom games. (Been playing it since I was very young! ) Using some debugging tools in Doom64Ex, I noticed that bullets and 'uses' were calculated with a line intersecting with objects. After some thinking, I came up with this algorithm.

    I'm probably going to make a tutorial about it at some point, and explain how instant bullets can play a huge part in player feedback, but I updated to the new beta release and was horrified when it suddenly stopped working correctly. It may have been something on my end, but I kept reverting back to 173 and seeing it work like a charm. It's a tad confusing...

    ...Uh...But yeah, story aside, I'll try to narrow the whole thing down some more, and maybe leave comments so there's a better idea what's going on. Cheers Ashley!

  • R0J0hound

    Hey Rojo,

    Is there a way to fill the canvas by editing the rgb values using a global variable?

    Let's say I have the global variables

    red = 100;

    blue = 20;

    green = 40;

    And I used the expression "fill canvas with color rgb(red,blue,green)". The canvas then fills itself based on the values in the global variables.

    The problem with the the "fill canvas" expression is that it only accepts strings, is there a way to have it so that it accepts a global variable as a parameter?

    You can turn the expression into a string by putting it in a str() function. So 'str(rgb(red,green,blue))', unless I'm missing something

  • I forgot to mention that I did not touch the events between different versions. This is purely caused from me going from 173 to 174 or 175.