[QUOTE=false prophet;49507771]I'm a dummy and I couldn't get ImGui to work because of missing dependencies that I didn't want to spend time finding. So I started making my own...... I chose to keep it all modular so that even when I forget about the project 2 weeks from now I'll still be able to use it in something else.
I only get an hour every day to work on this, so at work I'm reading MSDN pages instead of doing my job. :v:
[img]http://i.imgur.com/fwdTxaT.png[/img][/QUOTE]
oh my [I]god[/I], is that... [B][I]WinAPI?[/I][/B]
Working on a graph editor
[media]https://www.youtube.com/watch?v=ra0rI_QXkEY[/media]
[QUOTE=Jalict;49507645]Some fellews from the University and I are going to be working on a 2D (ish) game for next semester.
We'd like to use a language which we are familiar with (C#, Java or likely), we are quite used to Unity and have been doing that for several semester, but we want to learn a bit more from the Engine perspective this time.
Anyone that can recommend a C# Game-ish (Graphics, Sound, I/O) Library?
We really liked to use SFML as it looks [I]really[/I] mature and it's community is really active. But C++ looks kind of intermediating at this point.[/QUOTE]
If you're not sticking with Unity/UE/Gamemaker then just go either SMFL/C++ or SDL/C, it'll be a great learning experience.
[QUOTE=Anven11;49508217]oh my [I]god[/I], is that... [B][I]WinAPI?[/I][/B][/QUOTE]
What's wrong with that?
[QUOTE=Jalict;49507645]Some fellews from the University and I are going to be working on a 2D (ish) game for next semester.
We'd like to use a language which we are familiar with (C#, Java or likely), we are quite used to Unity and have been doing that for several semester, but we want to learn a bit more from the Engine perspective this time.
Anyone that can recommend a C# Game-ish (Graphics, Sound, I/O) Library?
We really liked to use SFML as it looks [I]really[/I] mature and it's community is really active. But C++ looks kind of intermediating at this point.[/QUOTE]
I can highly recommend LibGDX (Java) and Love2D (Lua). I have less experience with them, but there's also OpenTK and SharpDX (C#), openFrameworks and Cinder (C++).
[QUOTE=darkrei9n;49510314]What's wrong with that?[/QUOTE]
everything
everything indeed. It's a nightmare, but atleast I have a gooey gui to prototype with. Compared to X where everything makes sense, CreateWindow/Ex is a turd.
I added "look-at" IK to Dr. Glass, and it became immediately apparent that it would need some adjustment.
[vid]https://my.mixtape.moe/lkbaex.webm[/vid]
Has anyone managed to replicate GoldSrc's or Source's player movement in Unity, or C#?
I'm trying to get better "physics" driven movement for my player in Unity, but I just can't quite seem to get it like how Source handles theirs.
Are there any open source files that I could use for my base movement?
Or maybe there's someone here that has experience in doing this?
[QUOTE=sarge997;49510727]Has anyone managed to replicate GoldSrc's or Source's player movement in Unity, or C#?
I'm trying to get better "physics" driven movement for my player in Unity, but I just can't quite seem to get it like how Source handles theirs.
Are there any open source files that I could use for my base movement?
Or maybe there's someone here that has experience in doing this?[/QUOTE]
I have a fairly decent physics-based movement system going on, but it doesn't handle slopes very well yet. I might do a write-up on it once I hammer out all the issues.
[QUOTE=sarge997;49510727]Has anyone managed to replicate GoldSrc's or Source's player movement in Unity, or C#?
I'm trying to get better "physics" driven movement for my player in Unity, but I just can't quite seem to get it like how Source handles theirs.
Are there any open source files that I could use for my base movement?
Or maybe there's someone here that has experience in doing this?[/QUOTE]
you could check out how UE4 does it? it has really nice default character movement
[QUOTE=sarge997;49510727]Has anyone managed to replicate GoldSrc's or Source's player movement in Unity, or C#?
I'm trying to get better "physics" driven movement for my player in Unity, but I just can't quite seem to get it like how Source handles theirs.
Are there any open source files that I could use for my base movement?
Or maybe there's someone here that has experience in doing this?[/QUOTE]
Move away from the physics engine as much as possible is my best advice, don't do something like sending physics impulses based on which button you press.
Do your own friction, (air)acceleration, gravity, resistance and floor/sloop/edge detection for the player. Start simple by setting the absolute velocity of the player on keypress, then work from there.
There is an implementation for the movement in goldsrc in xash3d, [url]https://github.com/SDLash3D/xash3d/blob/master/engine/client/cl_pmove.c[/url] but its probably not as informative as you might think it is.
I'm not going to be using any of the actual physics engine for my movement, especially since I'll be networking this as well.
I'll be using Unity's character controller. It's just getting it to play and feel like Source is tough.
If I can't find any sort of port or an open source alternative. I'll probably have to write up my own.
Managed to fetch KernelBase.dll from my Windows 10 phone and dump exports from it
[URL="https://gist.github.com/55ab79e6abd5b655e211"]Here they are if anybody's interested[/URL]
Creating a rendering pipeline in opengl is really tedious...
[editline]12th January 2016[/editline]
I can now render an arbitrary image in an arbitrary position in my grid. I measure positions in pixel-space to make everything a little easier.
[t]https://my.mixtape.moe/vwdlxp.png[/t]
[QUOTE=DrDevil;49511595]Creating a rendering pipeline in opengl is really tedious...[/QUOTE]
Once it's done it feels so good though.
Today I wanted to add in mouse controls to my console. In order to do that I re-formatted my code into a basic form system and created a basic mouse-event propagating system. Even though it wasn't that hard and I knew how it should work (similar to how qt's works (keep in mind this is my own engine, no ui/widget system to work with here), it still somehow took me all day.
But in the end, I now have a raw input manager that will pipe out a text stream/unique keystrokes/mouse movements/mouse clicks to whatever I want, such as a stack of UI widgets, where they will abort the event early if they aren't in focus (no need for a text field to receive text if it's parent isn't even in focus)
[vid]https://my.mixtape.moe/eoinig.mp4[/vid]
(I'd make these videos smaller if I could, but the only way I can record video with ShadowPlay and OpenGL is to record desktop :saddowns:
I'll add more UI things later. I'm still going to add a scrollbar and corresponding buttons. Lastly, I will finish off with a main menu.
I love worms armageddon and I was thinking about physics and maps how do they work. Now I know I was stupid, it is really simple :v:
[video=youtube;MyNopZGp3Io]http://www.youtube.com/watch?v=MyNopZGp3Io[/video]
I can use any image to use as a map
[url]https://dl.dropboxusercontent.com/u/130137401/Screenshot%202016-01-12%2012.37.16.png[/url]
We spent 2 days on this for a game jam in norway.
The game is a fighting game using a cloning mechanic to duplicate your moves
I totally owned that afk guy
[vid]http://a.pomf.cat/jpkipt.mp4[/vid]
[QUOTE=AtomiCal;49513565]We spent 2 days on this for a game jam in norway.
The game is a fighting game using a cloning mechanic to duplicate your moves[/QUOTE]
This is great on SO many levels. The idea is great and the game looks great. The water, the tails and the pseudo-3d arena especially. The only complaint would be that the movement looks way too slow, I think a dash move would help immensely.
I can't believe you did this in two days. Can I ask what you used?
[QUOTE=deyoppe;49513595]This is great on SO many levels. The idea is great and the game looks great. The water, the tails and the pseudo-3d arena especially. The only complaint would be that the movement looks way too slow, I think a dash move would help immensely.
I can't believe you did this in two days. Can I ask what you used?[/QUOTE]
We used Unity using the default Unity 2D platformer package. We tweaked and changed a lot, but it was really helpful not having to worry about the technicals that much.
Fabric for audio.
The actual gameplay was added last minute on the train ride to show off our game. (It was an event thingy) Originally it was going to be more of a strategic game using bow/arrow and shields to progress towards the enemy. I dunno. I like the simplistic feel to it.
We were one programmer(me), one "Technical artist" and kinda a programmer as well, one visual artist, one Photoshop guy and designer, one game designer and one audio guy.
Basically the whole Krillbite team chipped in on this and we were allowed to use our work hours to work on the game.
Moving on from spheres...
The Janky Cloth
[vid]http://richardbamford.io/dmp/cloth_sim.webm[/vid]
Still have to figure out the correct coefficients and iron out some bugs with the forces propagating.
Woop, discretized and smoothed vector field!
[IMG]http://i.imgur.com/UzUGlvt.png[/IMG]
The right image is the magnitude of the smoothed vectors, which shows a problem: due to uneven sampling along the curve, some regions will result in a higher density in normals and their discretisations (orange and blue arrows respectively). I have no how this will influence the final solution (which should just be a 2D function that is 1 within the curve and 0 outside).
Bonus mountain range :v:
[IMG]http://i.imgur.com/2A19w5z.png[/IMG]
[QUOTE=Number-41;49514085]Woop, discretized and smoothed vector field!
[IMG]http://i.imgur.com/UzUGlvt.png[/IMG]
The right image is the magnitude of the smoothed vectors, which shows a problem: due to uneven sampling along the curve, some regions will result in a higher density in normals and their discretisations (orange and blue arrows respectively). I have no how this will influence the final solution (which should just be a 2D function that is 1 within the curve and 0 outside).
Bonus mountain range :v:
[IMG]http://i.imgur.com/2A19w5z.png[/IMG][/QUOTE]
Sorry to bug you, but how did you go about doing this and what language?
Can anyone remember what that level creation tool was that also autogenerated tiles based on an initial tile? Like you could give it grass tile and rock tile and it would generate all permutations of both the tiles at any rotation
[QUOTE=Verideth;49514287]Sorry to bug you, but how did you go about doing this and what language?[/QUOTE]
All done in Matlab, because well it's perfectly suited for it. Calculating the normals is quite straight forward if you have the points of the curve (red) (just some geometry).
Then you have a sparse set of normal vectors (or rather, oriented points with coordinates (x,y) and vector components (Nx,Ny)), these are the orange arrows.
You want to "splat" them onto a grid, so you set up a grid and for each normal vector, you find the nearest grid points for some coordinate (x,y). Then for each neighbouring grid point you calculate the x- and y components of the normal vector, weighed with the distance of that point to the grid point. So an oriented point that is in the middle of a square would have its components spread out over all 4 grid points, if it coincides exactly with a grid point, you give that single grid point the components completely (the discretized vector field is the blue arrows). It's a bit similar to what happens if you have a vector curve and you rasterize it, it'll get all pixelly and the amount of colour a single pixel gets is linearly related to its distance/overlap with the curve.
After that I convolve the "discretized" vector field with a gaussian kernel (in other words what Photoshop would call a Gaussian blur) so that the vector components get spread out smoothly:
[IMG]http://i.imgur.com/9uL1RAa.png[/IMG]
The reason for this is if you want to calculate the divergence (i.e. the manner in which a vector field becomes "bigger" or "smaller", sort of its derivative), you want it to vary smoothly or your divergence might be infinite in some places. Compare it to trying to differentiate a step function, at the point 0 it's "derivative" will be infinite, which is not very useful.
The final purpose is to find the divergence of this smooth vector field, plug it into the Poisson equation and apply the inverse smoothing filter to the solution to find the "indicator function", which should be 1 inside the curve and 0 outside.
This function can be used to build meshes of a set of oriented points. It's neater in 3D but the computational cost skyrockets then, you'll need k-D trees to partition your space because otherwise your problem will scale (at least!) as N^3 where N is the amount of grid points, which becomes absurdly large for any practical means. The final purpose of this whole thing is to investigate how a multigrid scheme to solve the Poisson equation can speed up and improve the solution. So basically all this is just preliminary to solving a second order differential equation :v:
For more info see
[url]https://www.cs.jhu.edu/~bolitho/Research/PoissonSurfaceReconstruction/PoissonRecon.pdf[/url]
A 3D implementation can be seen in [URL="https://vimeo.com/20933872"]Meshlab[/URL]. It's absurdly fast, props to the devs who wrote it (although their source code is unreadable to me).
[QUOTE=Number-41;49514581]All done in Matlab, because well it's perfectly suited for it. Calculating the normals is quite straight forward if you have the points of the curve (red) (just some geometry).
Then you have a sparse set of normal vectors (or rather, oriented points with coordinates (x,y) and vector components (Nx,Ny)), these are the orange arrows.
You want to "splat" them onto a grid, so you set up a grid and for each normal vector, you find the nearest grid points for some coordinate (x,y). Then for each neighbouring grid point you calculate the x- and y components of the normal vector, weighed with the distance of that point to the grid point. So an oriented point that is in the middle of a square would have its components spread out over all 4 grid points, if it coincides exactly with a grid point, you give that single grid point the components completely (the discretized vector field is the blue arrows). It's a bit similar to what happens if you have a vector curve and you rasterize it, it'll get all pixelly and the amount of colour a single pixel gets is linearly related to its distance/overlap with the curve.
After that I convolve the "discretized" vector field with a gaussian kernel (in other words what Photoshop would call a Gaussian blur) so that the vector components get spread out smoothly:
The reason for this is if you want to calculate the divergence (i.e. the manner in which a vector field becomes "bigger" or "smaller", sort of its derivative), you want it to vary smoothly or your divergence might be infinite in some places. Compare it to trying to differentiate a step function, at the point 0 it's "derivative" will be infinite, which is not very useful.
The final purpose is to find the divergence of this smooth vector field, plug it into the Poisson equation and apply the inverse smoothing filter to the solution to find the "indicator function", which should be 1 inside the curve and 0 outside.
This function can be used to build meshes of a set of oriented points. It's neater in 3D but the computational cost skyrockets then, you'll need k-D trees to partition your space because otherwise your problem will scale (at least!) as N^3 where N is the amount of grid points, which becomes absurdly large for any practical means. The final purpose of this whole thing is to investigate how a multigrid scheme to solve the Poisson equation can speed up and improve the solution. So basically all this is just preliminary to solving a second order differential equation :v:
For more info see
[url]https://www.cs.jhu.edu/~bolitho/Research/PoissonSurfaceReconstruction/PoissonRecon.pdf[/url]
A 3D implementation can be seen in [URL="https://vimeo.com/20933872"]Meshlab[/URL]. It's absurdly fast, props to the devs who wrote it (although their source code is unreadable to me).[/QUOTE]
Thanks so much, will check it out!
[QUOTE=Number-41;49514085]Woop, discretized and smoothed vector field!
[IMG]http://i.imgur.com/UzUGlvt.png[/IMG]
The right image is the magnitude of the smoothed vectors, which shows a problem: due to uneven sampling along the curve, some regions will result in a higher density in normals and their discretisations (orange and blue arrows respectively). I have no how this will influence the final solution (which should just be a 2D function that is 1 within the curve and 0 outside).
Bonus mountain range :v:
[IMG]http://i.imgur.com/2A19w5z.png[/IMG][/QUOTE]
You need to make natural parameterization of 2D function in order to get even points, if I understood it correctly.
Yes indeed, but that might be detrimental to the finer details of the curve or sharp corners if the subdivision is too rough, which in turn influences the necessary amount of grid points. I have no idea at the moment how you would set up a parametrization in the discrete case, something something arc length I guess...
I've managed to abstract everything enough to make this fun again. It caused me some headache though!
[media]https://www.youtube.com/watch?v=wtccfciY2Rc[/media]
[QUOTE=Number-41;49515420]Yes indeed, but that might be detrimental to the finer details of the curve or sharp corners if the subdivision is too rough, which in turn influences the necessary amount of grid points. I have no idea at the moment how you would set up a parametrization in the discrete case, something something arc length I guess...[/QUOTE]
You guessed right, it's all about arc length.
Nice work though, I am always happy to see your mathy stuff :smile:
Sorry, you need to Log In to post a reply to this thread.