Java-Gaming.org Hi !
Featured games (91)
games approved by the League of Dukes
Games in Showcase (804)
Games in Android Showcase (239)
games submitted by our members
Games in WIP (868)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: 1 ... 154 155 [156] 157 158 ... 216
  ignore  |  Print  
  What I did today  (Read 3666788 times)
0 Members and 3 Guests are viewing this topic.
Offline philfrei
« Reply #4650 - Posted 2016-08-29 06:52:01 »

Most of two days spent on a very elusive bug. Due to the intermittent nature and not a whole lot of confidence in my multi-threading chops, spent a lot of time checking things like possible race conditions, lack of atomic operations (where I thought they shouldn't really be required), deep vs shallow copy errors, that sort of thing. For the first time, also, employed a debugging technique I hadn't used before: catching and re-throwing the error down the call stack, thus allowing reportage on variable states at several levels.

It turns out though, that the problem was due to simple accumulation of arithmetic error. I discovered that if you add a float value that is in the E-6 range 400,000 times (via +=) or so, it can cough up a pretty sizable error compared to just doing the multiplication.

I don't know how to describe it any better without going into details no one want to read about.

Result: envelope operations on the synths are now being done via doubles rather than floats. I was afraid I'd break everything when I converted to doubles, but it only took about 20 minutes, once the changes were made, to fix the downstream errors that were generated. Am back to a pristine Eclipse: 0 Items in the "Problems" tab.

The "flibber" effect on the Allenspace generator is now much more like the original. Intermixing via selecting tracks at random has a much more satisfying aural glitchiness than iterating through the tracks, even when the time spent per track was also subject to variation.

music and music apps: http://adonax.com
Offline MinusKelvin

Senior Devvie


Medals: 20
Projects: 1
Exp: 4 years


Quantum WAT


« Reply #4651 - Posted 2016-08-29 10:49:29 »

I implemented normal mapping in 2D.

You can click my images to look at a larger version most of the time.
Offline elect

JGO Knight


Medals: 76



« Reply #4652 - Posted 2016-08-30 09:26:01 »

We finally successed to port the original openvr sample to jogl, after we wrote the openvr binding  Smiley

If anyone is interested in writing an lwjgl version, you are welcome to contribute  Wink
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline ags1

JGO Kernel


Medals: 367
Projects: 7


Make code not war!


« Reply #4653 - Posted 2016-08-30 10:42:00 »

@philfrei, I'm liking the Allenspace Generator! It's like a Geiger counter on acid.

It would be a good background track for a science fiction / hacker / creepy aliens kind of game.

Edit: But what does the "Release" button do? I'm scared to press it. I'm also scared to not press it.

Offline theagentd
« Reply #4654 - Posted 2016-08-30 15:12:44 »

I upgraded my Blender plugin a bit. It can now export the skeleton/bindpose of a model, and vertices with normals, tangents, UVs and bone bindings.

Myomyomyo.
Offline leSpace

Senior Devvie


Medals: 14
Exp: 1 year



« Reply #4655 - Posted 2016-08-30 15:37:42 »

I worked on a random tree generator (you actually slowly see the tree grow from nothing) :

It's absolutely useless but provides good result sometimes as shown in the image but also provides some absurdities.
Offline philfrei
« Reply #4656 - Posted 2016-08-30 16:56:40 »

@philfrei, I'm liking the Allenspace Generator! It's like a Geiger counter on acid.

It would be a good background track for a science fiction / hacker / creepy aliens kind of game.

Edit: But what does the "Release" button do? I'm scared to press it. I'm also scared to not press it.

Thanks!

I love your description--it's the best I've heard yet.

I think it would be neat to see the tone-cluster sound data sent to some sort of color synthesizer or graphic algorithm. But yes, I'm thinking it would be a component of a deep-space (deep inner space) stealth sort of scenario.

The "Start" and "Release" buttons refer to the auto-generation of tone clusters. "Release" just prevents any new sounds from occurring. Existing sounds will play out. To be relabeled.

When a "real" gui gets developed, it will be important to clarify what pertains to the "next" tone cluster that is going to be produced (most of the sliders) and what pertains to present-time controls like the flibber button and the bottom volume control. (Should also have a way to save/load settings and to export wav files, as well as better fitting slider equations than linear in certain instances.)

These are the longest envelope durations I've worked with, with sounds set up to crescendo/descrescendo for as long as a minute. But that is also part of the design, to have a slow evolution. However, it does mean that you have to wait for the next cluster, which can take a while, to hear what the new settings are producing.

I'm thinking of adding an echo control, as that worked very well to give the theremin extra depth. A reverb would be preferable but I'm not ready to tackle that challenge yet.

music and music apps: http://adonax.com
Offline J0
« Reply #4657 - Posted 2016-08-31 07:34:47 »

you actually slowly see the tree grow from nothing
Could you post a gif? Roll Eyes

Offline leSpace

Senior Devvie


Medals: 14
Exp: 1 year



« Reply #4658 - Posted 2016-08-31 13:55:49 »

Those are the ones i could make though they're not the best.
Click to Play

Click to Play


If you really are curious, that's the little program i use to see and generate the trees download it (the .jar) .


Quick explanation of the interface for the curious : evolution makes the tree properties evolve each time it grows : when age reaches 100% the current tree properties are kept and mutates only if evolution is checked, speed - or speed + double or divide by 2 the speed, restart recreate a randm tree from scratch and reload makes the current reaches age 100%
Offline J0
« Reply #4659 - Posted 2016-08-31 20:59:35 »

Maybe you could try to make the trees look slightly better by not allowing branches to grow oriented towards the ground? Also maybe you should only allow branches to grow in a π/2 — 3π/2 range commencing at the angle of the parent branch?

So basically what I'm saying is that the angle the branch grows to should be in the range [ max(π , angle_of_parent_branch - π/2) ; max(π, angle_of_parent_branch + π/2) ]

I don't know what it'll look like (or if these changes are compatible with the program you wrote, I didn't take the time to take a look at your source code) but I guess you should try Smiley

J0 Smiley

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline ags1

JGO Kernel


Medals: 367
Projects: 7


Make code not war!


« Reply #4660 - Posted 2016-09-02 10:58:46 »

Added a test of road connectedness to my village generator.

https://www.jdoodle.com/a/13E

Currently the generator just tests to see which roads are connected to a random root road, but next week I will add a calculation of a fully connected graph. I think I will just start will all roads paved, and then prune the grid randomly until the minimum number of roads are paved with all mandatory (next to building) road sections connected together.

Offline leSpace

Senior Devvie


Medals: 14
Exp: 1 year



« Reply #4661 - Posted 2016-09-02 15:41:06 »

Maybe you could try to make the trees look slightly better by not allowing branches to grow oriented towards the ground? Also maybe you should only allow branches to grow in a π/2 — 3π/2 range commencing at the angle of the parent branch?

So basically what I'm saying is that the angle the branch grows to should be in the range [ max(π , angle_of_parent_branch - π/2) ; max(π, angle_of_parent_branch + π/2) ]

I don't know what it'll look like (or if these changes are compatible with the program you wrote, I didn't take the time to take a look at your source code) but I guess you should try Smiley

J0 Smiley

Well thanks, my friend told me the same thing at the beginning but i didn't listen to him, but now that i've tested it, it's a lot better without branches pushing towards the ground. ( And just because i wanted to say it although it doesn't matter it was [ max(-π; angle_of_parent_branch  - π/2) ; min(π, angle_of_parent_branch + π/2) ] ).


NB : i didn't include the source in the jar because i'm too ashamed of my code to show it. But for those interested by the program the jar is updated and available : here
Offline J0
« Reply #4662 - Posted 2016-09-02 16:35:59 »

It does look better now!

It was [ max(-π; angle_of_parent_branch  - π/2) ; min(π, angle_of_parent_branch + π/2) ] .
That's what you get for trying to post code without rereading it Roll Eyes

NB : i didn't include the source in the jar because i'm too ashamed of my code to show it.
As a side note, decompiling class files is a thing, you know.
Here is the beginning of
org.machine.life.Wind
Grin :
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
package org.machine.life;

import org.machine.life.Drawer;
import org.minus.FastMath;
import org.minus.FastRand;
import org.minus.FastTrig;

public class Wind {
    private float dx = FastRand.randFloat() * 10.0f - 5.0f;
    private float dy = FastRand.randFloat() * 10.0f - 5.0f;
    private static float TICK_UNIT = 10.0f;

    public float getIntensity() {
        return FastMath.hypot((float)this.dx, (float)this.dy);
    }


J0 Smiley

Offline matt_p
« Reply #4663 - Posted 2016-09-02 16:37:53 »

Soooo... only did some bugfixing and small things on my project to let it sleep... for some days.
Because we just finished packing our luggage for our vacation: 3 weeks Japan Smiley I hope the +7 hours don't hit me too hard and that the 14h (in summary for all flights as we have to switch 2 times to reach Japan) flight is also ok (I'm 1.85m tall, for some planes this is already hard at the limit of coziness)
Offline leSpace

Senior Devvie


Medals: 14
Exp: 1 year



« Reply #4664 - Posted 2016-09-02 18:03:51 »

NB : i didn't include the source in the jar because i'm too ashamed of my code to show it.
As a side note, decompiling class files is a thing, you know.
Here is the beginning of
org.machine.life.Wind
Grin :
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
package org.machine.life;

import org.machine.life.Drawer;
import org.minus.FastMath;
import org.minus.FastRand;
import org.minus.FastTrig;

public class Wind {
    private float dx = FastRand.randFloat() * 10.0f - 5.0f;
    private float dy = FastRand.randFloat() * 10.0f - 5.0f;
    private static float TICK_UNIT = 10.0f;

    public float getIntensity() {
        return FastMath.hypot((float)this.dx, (float)this.dy);
    }


J0 Smiley
[/quote]

Haha it's a trap  Grin, well just don't look at Tree persecutioncomplex, in fact i did try to add some Wind last weekend like real world physics and i used real volumic mass of wood. But the output was that when the trees were growing they were completly pushed on the floor by the wind ( which was only 1m/s ) but when they reached their full size, they were not affected at all, even the branches. So i just removed it but didn't remove the class. When i'll have the time, i might try to re-implement it with some pseudo-simulation of wind.


Soooo... only did some bugfixing and small things on my project to let it sleep... for some days.
Because we just finished packing our luggage for our vacation: 3 weeks Japan Smiley I hope the +7 hours don't hit me too hard and that the 14h (in summary for all flights as we have to switch 2 times to reach Japan) flight is also ok (I'm 1.85m tall, for some planes this is already hard at the limit of coziness)
I'm 5cm smaller than you, and when i took the plane to China with Lufthansa, i can tell you that the seats were a bit small for my legs. But on the way back, i got promoted to first class so no problem   Cool. I don't know if you will wait long between your planes but in airports if you look for it you can find machines which gives free hot chocolate or coffe. Feel free to abuse it Tongue
Offline wessles
« Reply #4665 - Posted 2016-09-02 19:17:48 »

I finished my first internship yesterday, so I have to go back to school this week Tongue.

When I went home, I noticed the raspberry pi zero is not out of stock anymore, so I bought a kit. That should be fun.

I also made a script that corrupts IP cameras.



Offline J0
« Reply #4666 - Posted 2016-09-02 20:05:34 »

@matt_p 186 cm here, I know the struggle...

@leSpace Good luck with the wind then!

@wessles Now you just need to inject that in some closed-circuit CCTV system and steal shit Grin

Offline Slyth2727
« Reply #4667 - Posted 2016-09-03 02:05:57 »

New personal best on the Rubiks Cube - 6.97. First sub 7! Joy Smiley
I'm working on college admissions, it's.. stressful to say the least. Lots to do.
Offline ra4king

JGO Kernel


Medals: 508
Projects: 3
Exp: 5 years


I'm the King!


« Reply #4668 - Posted 2016-09-03 07:04:04 »

I have received an offer from Google for full-time employment starting next year! Hooray!!

Offline SHC
« Reply #4669 - Posted 2016-09-03 16:52:34 »

I got back into making my dream application, a drag and drop game development tool for absolute beginners. Just started an hour ago.



I will be using this as my dream application, and also as the final project for college. I still have one year and eight months to complete this. The good thing is that this will have the ability to create Java sources once done making a prototype for faster development.

Offline ags1

JGO Kernel


Medals: 367
Projects: 7


Make code not war!


« Reply #4670 - Posted 2016-09-04 13:17:38 »

Finished off my village generator. It now generates a grid of connected roads for all buildings. The grid is not optimum, but I guess that's more realistic anyway.

http://jdoodle.com/a/15W


  : Grass
# : Tree
v : Vegetable patch
h : Hovel
c : Cottage
l : Longhouse
H : Hall
G : Great Hall
S : Stronghold
M : Market
. : Square
City plan:
 c h| h v| h                     #
    |    |                        
     -----                        
    |   #  # #                    
    | #                            
     ---------------              
   #|      # h| h                #
    |        v|                    
          -----     -----          
    |      . .|   #  M  |        #
    |      . .|      H H|   #      
          ---------------          
 # h| h v|    |                    
   v|    |    |           #        
-----          ---------------    
 h v    #          | h       |    
        #          |         |    
                              -----
                   | h         c h
           #       |             v
                                  

Offline pyroMechanical

Senior Newbie


Medals: 1



« Reply #4671 - Posted 2016-09-04 15:33:43 »

I -finally- got my enemy pathfinding to work, which is exciting. I also made some basic effects in sfxr so there's actually audio in my game.
Offline J0
« Reply #4672 - Posted 2016-09-04 17:33:51 »


 c h| h v| h                     #
    |    |                        
     -----                        
    |   #  # #                    
    | #                            
     ---------------              
   #|      # h| h                #
    |        v|                    
          -----     -----          
    |      . .|   #  M  |        #
    |      . .|      H H|   #      
          ---------------          
 # h| h v|    |                    
   v|    |    |           #        
----        ---------------    
 h v    #          | h       |    
        #          |         |    
                              -----
                   | h         c h
           #       |             v
                                  

I highlighted two vertices of your path in red; it's not very visible, so just in case, their coordinates in the path grid, from bottom-left, would be (1,2) and (2,2).
These points could easily be connected by just one path, but right now you can only — staying on the paths — go from one to the other by travelling along 9 paths.
I think you should try to prevent that; although the grid not being optimum is indeed more realistic, I reckon this is beyond realistic Grin

J0 Smiley

Offline ags1

JGO Kernel


Medals: 367
Projects: 7


Make code not war!


« Reply #4673 - Posted 2016-09-04 19:46:32 »

It's very realistic. Olaf Ragnarson lives there and he's one scary dude with a big axe. It's safest to take the scenic route.

A simple brute-force way would be to run the path generation several times and then pick the result with the least number of paths. Another way would be to prune paths with connections to mandatory roads last.

If I calculate the total distance to a point in the graph, I can then add paths back in and see what addition lowers the total distance most.

But hey, the Vangardians don't even walk on the paths yet Smiley

Offline ShadedVertex
« Reply #4674 - Posted 2016-09-05 04:48:48 »

Woohoo! This is what I did yesterday:



Sure, screen-space ambient occlusion is a pretty old technique, but it's my very first time doing global illumination!
Offline basil_

« JGO Bitwise Duke »


Medals: 418
Exp: 13 years



« Reply #4675 - Posted 2016-09-05 08:08:28 »

SSAO is always good, even on top of real GI.
Offline Jono
« Reply #4676 - Posted 2016-09-05 08:33:08 »

It's very realistic. Olaf Ragnarson lives there and he's one scary dude with a big axe. It's safest to take the scenic route.

A simple brute-force way would be to run the path generation several times and then pick the result with the least number of paths. Another way would be to prune paths with connections to mandatory roads last.

If I calculate the total distance to a point in the graph, I can then add paths back in and see what addition lowers the total distance most.

But hey, the Vangardians don't even walk on the paths yet Smiley
You're looking for something between a Shortest Path Tree (efficient movement) and a Minimum Spanning Tree (least road construction).

If your villages are small enough for a quadratic algorithm then I'd do:
- for every pair of locations
  - add the shortest path between them, where existing paths cost 0.1 and non-paths cost 1.0
Offline ags1

JGO Kernel


Medals: 367
Projects: 7


Make code not war!


« Reply #4677 - Posted 2016-09-05 10:12:47 »

That sounds like a very good and simple algorithm. I like the fact that it is based on what real people would do - take the shortest distance, unless there is an already existing path nearby. I can refine it by giving buildings a weight. So all buildings strongly generate the shortest path to the market or temple, and strongly favor existing paths for less popular buildings (like the village beggar's hut).

I'm moving on to other aspects now, but I've added your suggestion as a //todo in the code.

Offline J0
« Reply #4678 - Posted 2016-09-05 15:34:32 »

Had my first C++ lesson at University today Smiley I'm actually surprised by the apparent similarity between Java and C++!

Offline Mac70
« Reply #4679 - Posted 2016-09-05 16:23:07 »

Had my first C++ lesson at University today Smiley I'm actually surprised by the apparent similarity between Java and C++!

Both Java and C++ belong to the same family of C-like languages (well, actually Java is meant to be simplified C++ with most of its advantages and less flaws), so expect lots of similarities...

...Well, at least until you will dive deeper. C++ concepts of memory, objects, references etc. are VERY different. Smiley
Pages: 1 ... 154 155 [156] 157 158 ... 216
  ignore  |  Print  
 
 

 
Riven (581 views)
2019-09-04 15:33:17

hadezbladez (5509 views)
2018-11-16 13:46:03

hadezbladez (2402 views)
2018-11-16 13:41:33

hadezbladez (5771 views)
2018-11-16 13:35:35

hadezbladez (1223 views)
2018-11-16 13:32:03

EgonOlsen (4661 views)
2018-06-10 19:43:48

EgonOlsen (5682 views)
2018-06-10 19:43:44

EgonOlsen (3197 views)
2018-06-10 19:43:20

DesertCoockie (4095 views)
2018-05-13 18:23:11

nelsongames (5115 views)
2018-04-24 18:15:36
A NON-ideal modular configuration for Eclipse with JavaFX
by philfrei
2019-12-19 19:35:12

Java Gaming Resources
by philfrei
2019-05-14 16:15:13

Deployment and Packaging
by philfrei
2019-05-08 15:15:36

Deployment and Packaging
by philfrei
2019-05-08 15:13:34

Deployment and Packaging
by philfrei
2019-02-17 20:25:53

Deployment and Packaging
by mudlee
2018-08-22 18:09:50

Java Gaming Resources
by gouessej
2018-08-22 08:19:41

Deployment and Packaging
by gouessej
2018-08-22 08:04:08
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!