TestPace X V. 0.9 Alpha
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi65.tinypic.com%2F21l67bm.png&hash=853fd7540f49fb1d48db316b0958ff68d721e206)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi67.tinypic.com%2Fixujwh.png&hash=abfda0b9cd8e70d89a9d44e66e4b0e234f534d95)
Requirements
Windows 10/8/7/xp
4 GB Ram.
Dual-processor
GTX 1050 ti <<< Possibly with fewer resources working, I don't know.
Move Vehicle.
Key W, Key A, Key D, Key S
Key Space
Key R Reset Vehicle
Free camera Mouse.
Zoom Camera button Left mouse or wheel Mouse.
Key E To get in and out of the car.
Key Shift Run Player out of the vehicle.
Download. (https://www.dropbox.com/sh/326e6mu8xxyoifd/AAD5fuw-MrWvPuL0bNO5f--ja?dl=0)
Nothing special, rocks and one or other improvement. This version runs full screen with a resolution of 1366,768. Another important thing is that a very simple game launcher was implemented with two buttons, this launcher is created in purebasic and launches the dll game. dll which is actually the executable of Blitz3D.
In this case we are approaching the version 1.0, where it is implemented very simple gameplay, without audio or anything at the moment.
Info Game for Alpha 1.0
Exploration and Survival.
You are an astronaut, the only survivor of an emergency landing on the red planet, and your first mission is to reach the nearest habitat of the collision point before your oxygen in your space suit runs out.
Hi Yue.
I'm interested to know how do you get that information you post in the upper left corner.
Y'Know about
the FPS, Ram, and TRIS
New development version released. :)
0.2 Alpha release new.
0.3 Alpha release new.
0.4 Alpha release new.
To get the best time in 5 control points. :)
0.5 Alpha release new. Character controller. :P
0.6Alpha release new. System Particle in Wheels.
0.7 Alpha release new. Fix.
0.8 Alpha release new. :-X
Yue, are u Xilvan?
Quote from: Naughty Alien on February 02, 2018, 02:14:16
Yue, are u Xilvan?
I'm sorry...
I don't understand, the translator doesn't help much.
You ask me if I'm Xilvan?.
Quote from: Naughty Alien on February 02, 2018, 02:14:16
Yue, are u Xilvan?
He can't be, or there would be dogs and candy in his game. ;D
Quote from: MikeHart on February 02, 2018, 07:48:52
Quote from: Naughty Alien on February 02, 2018, 02:14:16
Yue, are u Xilvan?
He can't be, or there would be dogs and candy in his game. ;D
I remember, in the cemetery of the old forum there was a user who was creating a game of a dog that visited planets, in this case only the dogs and sweets are missing in my game. ;D
Yue is much more skilled than Xylvan... Look at the structure of his meshes and look at his uvmapping/textures, then go take a look at those of Xylvan, you will quickly see the difference.
Quote from: RemiD on February 02, 2018, 18:16:59
Yue is much more skilled than Xylvan... Look at the structure of his meshes and look at his uvmapping/textures, then go take a look at those of Xylvan, you will quickly see the difference.
I don't think Yue actually modelled and textured those models?
It should be noted that I did not make the models, and all credits are to their respective authors.
The futuristic car model was designed by Piotr Kupsc, which I authorize to be used in this game.
Piotr Kupsc "Sure go ahead, no need to credit me for it".
https://www.artstation.com/piotrkupsc
On the other hand, the model of the astronaut is created by Kuro, who grants the model with a commercial license, which demands that in the game somewhere put his name.
https://sketchfab.com/models/8366b64c9b4f41beb66f170f91b39c87#
In such a case the only thing I do is to adapt these models to my needs, like tearing off the hands and arms of the astronaut's model and putting him in the character in the first person, in such a case with the car as well.
I could create models, however I think there are many people with incredible capabilities for that, and the only thing done so far is to try to take a lot of pieces and join them together as you do with a puzzle, nothing from the other world, maybe that's what our friend RemiD refers to.
Translated with www.DeepL.com/Translator
Hehehe.. Xilvan. - I like to think he is a hippy or something with his friendly, non-violent, on LSD tripping atmospheric scenes. Where is he anyway? I give him credits for perseverance.
And I do agree: Yue, you are way more skilled and slick, even though you use 3rd party models. Perhaps even that will change later when the focus is less on the coding(you learned a lot). The way you use them looks really good and that can only be credited to you. 8)
Update wise I can see a similarity: we can barely keep up with all the updates.. ;) Perhaps an idea to show only the bigger changes? And post 1 link where people can always get the latest download. Otherwise might be bit overkill.
Nevertheless: I'm always curious to see what you added this time, so I keep checking. It's kinda addictive like watching a TV series. These things are also what makes this forum feel very 'alive'.
Quote
Update wise I can see a similarity: we can barely keep up with all the updates.. ;) Perhaps an idea to show only the bigger changes?
Agreed.
Quote
I don't think Yue actually modelled and textured those models?
ok...
But even his previous creations (like "pawn" or the "forklift") were "cleaner" than those of Xylvan.
And Xylvan's games were buggy and anormally slow... (for the complexity of the scene)
Quote from: RemiD on February 03, 2018, 10:05:42
Quote
I don't think Yue actually modelled and textured those models?
ok...
But even his previous creations (like "pawn" or the "forklift") were "cleaner" than those of Xylvan.
And Xylvan's games were buggy and anormally slow... (for the complexity of the scene)
Lol, I was just saying his models were not created by him when you said they were better than Xylan's :P
I just wanted to precise things, since the comment by Naughty Alien is like an insult to a game dev... (being compared to Xylvan is not a compliment, imo)
QuoteI just wanted to precise things, since the comment by Naughty Alien is like an insult to a game dev... (being compared to Xylvan is not a compliment, imo)
..nou..it was not a comment but question..after all, i will never take Xylvan as an example for insult, as that guy had persistency i have never seen before (tats a good thing)...i was merely making a friendly joke regarding bunch of frequent updates i saw, hence, it reminded me on moment in time when that was major signature of Xylvan work...thats all...far from insult far as im concern...
Constant updating is a kind of personal motivation. And to create a video game from my point of view is to put together a puzzle and make everything work well, at first this was out of hand, but I have improved the code and it's much easier for me to keep it, since I don't focus on what I don't know, if not try to improve what I know. It is undeniable that I have learned things, and I believe in a certain way I have learned them badly or by force, but if I succeed in doing something, it will be a lot of fun.
My learning projects
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2589.jpg&hash=56e86febf06116e83f67199611ca65e79bee421c)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2577.jpg&hash=f99ab55a9bcd8ed277043854a7c7b04fb262e4d1)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2605.jpg&hash=4909c4d7a062df0f5891d77c5198e401cc8caeb8)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2550.jpg&hash=4bb44c29a93a55d0e3dd9c3f768b7a02ac0ebc5e)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2538.jpg&hash=2f16121ffb55a3221c439b403a46bfe8cd53ac12)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2527.jpg&hash=67a0c47363dffa5fb787e54850587d590db98c9a)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2502.jpg&hash=6e42c2d8ebedf1510ebfb8a264879ec8cf6fe64d)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2501.jpg&hash=8521576d3d4fcfd6b88e60a9622f96714750425b)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2417.jpg&hash=913bbc64ef11c3734ec1fa846722cbe8dc26d6ec)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2328.jpg&hash=12823f70876a1ac22c45847b36f2089d0acd0daf)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2326.jpg&hash=baa0c3645c8b21de5fa04a7f8324e56c76554dae)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2321.jpg&hash=03e0b2134d8d880342871354b049d1b2f0e71aaa)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2311.jpg&hash=a44936728e6a619bb7da99d8bd19e4b5d34436f5)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2299.jpg&hash=6a8d2067fa89c90415392bd074fa08c2dc9ba7ce)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2276.jpg&hash=cf6eedaf403b24b4d0697c6ac61977f59c5bf540)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2268.jpg&hash=b48030370dadd03542fbea11d5788e3a82a205cc)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2251.jpg&hash=85cb1e720aaa62bc1fa194ef7800c9bb8af9c7b8)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2247.jpg&hash=05f588a9b29c621722f3603aafb83fc4fb9e3b4c)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2245.jpg&hash=893a35a0ed8df15ac6d055de2dce0ba7bbf13478)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2240.jpg&hash=091c4e7e9f14d511a1de04d20c46ed8fac6e3c9f)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2237.jpg&hash=b6b3a0494a68d6335f27822cd743643978f3347d)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2232.jpg&hash=a813f59ba3856bf1ab73ef17d542b9f7d8684284)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2211.jpg&hash=3cc330a5a0fa8fce3c0546dcd16adc5465b30611)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2172.jpg&hash=a10659314d2854e0ec4634d3b6e5e70686b6978a)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2163.jpg&hash=113cfe43fed52ff0ae5f536e9403f7657a7a6baf)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2162.jpg&hash=3025e1bea9842d4aa0d1c1c276302163dbbd9df5)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2160.jpg&hash=465cc097908a20db96706c5998368ce04eecbfe0)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2637.jpg&hash=2b9c1a35933cd559c3ae0c7dc6102afd15b0fdee)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.mojolabs.nz%2Fgallery%2F2619.jpg&hash=31e3aa5a3067801ef87b77df144eeb8a37f58a4d)
When I look at the above, I feel like it's been a long time..
edit: A suggestion for the forums, is possible a section of Logs, as in the old forums?
Quote
Constant updating is a kind of personal motivation.
That's fine, and understandable. Good luck with your projects...But please don't keep posting large pictures every 10 minutes.
Quote from: Steve Elliott on February 03, 2018, 16:22:12
Quote
Constant updating is a kind of personal motivation.
That's fine, and understandable. Good luck with your projects...But please don't keep posting large pictures every 10 minutes.
In that case my request to Qube is, if possible, a section of logs, as in the old forums.
Yes, this has been requested before. Qube? :)
Wow Yue, that's a really nice collage of screenshots from your projects.
@ RemiD
I think Yue took the models from some websites - at least he thankes some users for the astronaut model - and maybe even for the tesla model.
So his work should be the "engine setup" and the "interaction" (steering, menus, ...). In other projects (Pawn...) I think Yue did some textures and modelling - so maybe the models in this project are already edited by him - or not.
Think once he learned a bit of Substance Painter (and the likes) it won't be that hard for him to create some textures for the models - to improve look a bit more.
bye
Ron
Well, at my daughter's suggestion, the soil texture has changed, a little more reddish. ;)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2F33jjrj5.png&hash=bcea6cc5425949e7e6d311b5efd4ff2f8e00230d)
Make it an actual game before improving visuals.
Else you will toy around forever without actually finishing the game.
bye
Ron
Totally agree with Derron.
Totally agree with Steve ;D
lmao ;D
The sensible people do ;)
They're absolutely right, which proves one thing only, I don't know how to make a video game. I mean, I can do certain things but not others. So I would like some volunteer Manager to guide me on a weekly basis in specific project tasks by focusing on the right path for it to be a video game. This is because sometimes I am very exhausted from work, today I arrived at 6 in the morning from a 24-hour shift and slept about two hours, so if someone tells me, for this week do this, do that and when the task is finished I will move on to another. I think it would be easier. However the difference with this now is that it is under control, so while this happens there is a high possibility of making a game.
Translated with www.DeepL.com/Translator
We have not said that you are not capable of making a video game, but rather we suggest to not focus on unimportant details (like improving / tweaking the graphics) until you have managed to have at least the essential functionalities (main gameplay elements / mechanics) of your game (and this advice is for every developper here !)
But of course you do what you want.
Exactly. You have the beginnings of a game.
But what are the objectives of the game? This is very important.
Where is the challenge?
What is the genre of game? Exploration? A race game?...
Make a sketch/list of notes what you want to have in that game.
Then we might be able to give you our opinions on whether some features will take way too much time (eg. a "deeplearning AI").
Think of it like "todo list/check list" - and start right on top of what you want, then work down to on what it is based of:
- racing game on mars
- - racing on "tracks" - how to "limit" them, via walls, via laser borders, no track at all but check points? ...
- - racing against enemies? If so, fighting each other or just "time based" races?
- - ...
So you fleshed out the idea. Then you need to think of what you need to be able to do the above.
- need a 3D engine [check]
- need a controllable vehicle (no need to have the "car" already, just a simple box with wheels for physics ... can get replaced later on) [check]
- need a system to keep track if I am on track - eg checking if I drive through the checkboxes
- need a system to have multiple tracks - so I can do more than one track
- ability to check if a race is ended for me
- depending on how important the opponents are in the game (eg. only win if all other cars are broken) you already need to implement AI now. It's not that easy, so I would avoid "fight each other" scenarios at first. Use a simple racing approach (Stevie G and others could surely descibe the idea of "follow the ideal racing line")
...
Once the core game is working, you can add the gui stuff for new games ,settings, quit ... until then a simple "escape key quits the game" is ok. Why? you are still prototyping, no need to have all that nifty "click here to quit", "do you really want to quit..."-confirmation stuff and so on.
Let me summarize again: Sketch out the pure game idea and game play. Get this working. From then on you can improve, extend, ...
bye
Ron
@Derron Thanks for the help, I'll work on what you mention. :)
I agree to what the others said.
Focus on the basics first. From concept and target audience to matching gameplay, design, art style, everything.
Before you have that you can't really implement the graphics (or any tech), because you don't know how they have to look and function.
The tech (including graphics) has to follow the overarching design, not the other way around.
I think you know well how to make a game, you just really like to play with graphics and focus too early on that. I am like that too, I love tweaking graphics.
But, when I actually want to make a game, I force myself to totally shift gears and do the important things first, then decide what effects/features I need based on that and only add those. No point in putting in a lot of things you will not really need because your game-story/gameplay/design suddenly goes in a different direction. Time is your most important currency.
@GaborD
I think you hit the point.
Well, for now I'm done dealing with something called rocks. I already wrote something very simple in a notebook, which I put in the first entry in this worklog. That said, I'm going to think about the gameplay.
So I need information about the astronaut's oxygen, something very simple, a simple message on screen that shows that the oxygen is running out and if you don't do something about it dies. Now what should you do? in the impact zone, the vehicle is in good condition, the only thing that has to be done is to mount it and in and get to the nearest dwelling to fix his suit, I think that's it, a small video game, in the zone of the impact for now there won't be any debris, only the player where the game starts, after that according to my agenda will have to look for shit to plant some potatoes, that can do it exploring other habitats in the toilets. I think it's very simple when you write.
Well, we'll see what happens. Greetings.
Translated with www.DeepL.com/Translator
..after reading everything, I agree to disagree :)
Maybe I have to agree to play a game isn't my thing. ;D
The thing is, I've only been doing this for a month, I hope to make a game this year. :-X
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi63.tinypic.com%2F4q4ydd.png&hash=c931f8c53bf43e7f03b207200cb68c914583f645)
:P
System Rocks test.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi65.tinypic.com%2Fiqzq8o.png&hash=cd7060f3e15df861f13c66506b2eb3200c99047a)
Rocks Finish.
(https://pbs.twimg.com/media/DVcrhixWAAARdn_.jpg:large)
When problems arise.
I have a deterioration in performance from 60 marks per second to 15. And that's when I have absolutely no idea what's causing that. So all that's left is speculation and testing.
The scenery consists of 4000 rocks, not that it can be highlighted that it is the great thing, these rocks appear randomly from the center of the world in a radius of 500 units, in all directions of the land. It's not the best thing, since the spectacular thing would be that those stones always appear no matter the place of the terrain where the vehicle or the player is, I thought that the peak of bottle is caused by that number of stones, its collision etc. etc., I'll see if this has a solution. Since inevitably without the rocks this goes at a decent speed. In the end I feel like a gift to you and your RemiD squire. :)
Translated with www.DeepL.com/Translator
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi65.tinypic.com%2Fm7gdjt.png&hash=194cad3f776ab48f41346009e4470859e68e4c79)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.lafamiliadebroward.com%2Fwp-content%2Fuploads%2F2015%2F09%2Fdon-quijote-de-la-mancha.jpg&hash=08ffc5c74ca227b4afe31d9bb596586543e1c3da)
Fixed the performance problem of affected by the large amount of rocks. Now it's time to think about the gameplay. :-X
; ---------------------------------------------
; Proyecto : TestPace X.
; Programador : Yue Rexie.
; Sitio Web : http://www.iris3dgames.ga
; fichero : TRocas.bb
; ---------------------------------------------
; Nota : Tipo TRocas
; Objeto Rocas.
; ---------------------------------------------
Global piedras.TRocas = Null
Type TRocas
Field id%
Field roca%[4000]
Field pxRoca[4000]
Field rocaMesh.TMalla
End Type
Function Init_Rocas.TRocas()
Local self.TRocas = New TRocas
self\rocaMesh.TMalla = Init_Malla("Roca.b3d")
For r = 1 To 4000
self\roca[r] = CopyMesh( self\rocaMesh\ente )
Next
Return ( self.TRocas )
End Function
Global tx%
Global ty#
Function SetPositionStones(rocas.TRocas )
If tx = False Then
For r = 1 To 4000
EntityAutoFadeMode(rocas\roca[r], True)
EntityAutoFade( rocas\roca[r], 150, 180 )
PositionEntity ( rocas\roca[r],x + Rnd(-500,500), 60,Rnd(-500,500), True )
RotateEntity ( rocas\roca[r], Rand( -180, 180), Rand( -180, 180), Rand( -180, 180) )
ScaleMesh ( rocas\roca[r], Rnd(1,1.5), Rnd(1,1.5) ,Rnd(1,1.5) )
rocas\pxRoca[r] = BodyCreateHull(rocas\roca[r] , 0 ) ; BodyCreateMesh <<< Bug.
ty = TerrainY( colinas\ente, EntityX(rocas\roca[r], True ), EntityY(rocas\roca[r], True ),EntityZ(rocas\roca[r], True ) )
PositionEntity ( rocas\roca[r], EntityX(rocas\roca[r],True ) , ty, EntityZ(rocas\roca[r], True ) )
Next
tx = True
End If
End Function
Function UpdateColRocas( )
Local rocas.TRocas = Null
For rocas.TRocas = Each TRocas
For n = 1 To 4000
If EntityDistance( rocas\roca[n], vehiculo\chassis\ente) <10 Or EntityDistance( rocas\roca[n], jugador\jugador\ente) <10 Then
phBodySetSleep( rocas\pxRoca[n], False )
phBodySetPos rocas\pxRoca[n],EntityX(rocas\roca[n],False ), EntityY(rocas\roca[n],False ) , EntityZ(rocas\roca[n],False )
phBodySetRot rocas\pxRoca[n], EntityPitch(rocas\roca[n],False),EntityYaw(rocas\roca[n],False),EntityRoll(rocas\roca[n],False)
EntityColor ( rocas\roca[n], 255, 0, 0 )
EntityFX ( rocas\roca[n], 1 )
Else
phBodySetSleep( rocas\pxRoca[n], True )
EntityColor ( rocas\roca[n], 0,255,0)
EntityFX ( rocas\roca[n], 0 )
End If
Next
Next
End Function
Function DeInit_Rocas()
Local selfs.TRocas
For selfs.TRocas = Each TRocas
For r = 1 To 4000
If selfs\roca[r] Then
FreeEntity selfs\roca[r]
selfs\roca[r] = 0
End If
Next
Delete selfs.TRocas
Next
End Function
; Solved problem FPS low.
Function BodyCreateHull%(mesh%,mass#)
; Obtain surfaces and vertices number
Local nsurf = CountSurfaces(mesh)
Local nvert = 0
For ns = 1 To nsurf
Local surf = GetSurface(mesh,ns)
nvert = nvert + CountVertices(surf)
Next
Local vbank = CreateBank(nvert*4*3)
nv = 0
; Poke vertices coordinates to bank
For ns = 1 To nsurf
surf = GetSurface(mesh,ns)
nvv = CountVertices(surf)
For nvc = 0 To nvv - 1
PokeFloat vbank,nv*12+0,VertexX(surf,nvc)
PokeFloat vbank,nv*12+4,VertexY(surf,nvc)
PokeFloat vbank,nv*12+8,VertexZ(surf,nvc)
nv = nv+1
Next
Next
;call wrapper function
Local bbb% = phBodyCreateHull(vbank,nvert,mass)
FreeBank vbank
Return bbb
End Function
To decrease the time it takes to calculate collisions / physics and to render :
only use a few different premade rocks and hide them
for each of your 4000 rocks, copy a premade rock (copyentity())
rotate the copy randomly (pitch and yaw) to make it appear different even if it is a copy (rotateentity())
use a low details version for the collisions / linepick / physics
only activate collidables / bodies which are near enough your vehicle
(don't use copymesh() or scalemesh() or positionmesh() or rotatemesh() (which creates a new mesh or alters the mesh structure) ! instead use copyentity() scaleentity() positionentity() rotateentity() )
Charging time improved drastically using copyentity not copymesh.
Thanks You RemiD. :)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi67.tinypic.com%2F2960oxj.png&hash=c62c0cc083fc22491aa645db63660248a5b68da1)
Everything seems to be working fine, the next step is to move on to playability.
So I need to create the following elements:
A habitat on Mars.
An emergency capsule.
A hud of oxygen for the player.
This is based on the fact that I can't find resources available on the net, I will do it myself using fragmotion or blender, I can think about what the player has to do to get to the habitat before his oxygen runs out.
(https://pbs.twimg.com/media/DVd5-suXcAIqI09.jpg:large)
Probably the best shape for buildings would be the iglo-shape, with solar panels and a mini nuclear powerplant near it.
https://twitter.com/JohnCai82978377
I already have my first follower on twitter :D
About the habitat I was thinking about something like this. Although I don't really know if it's the best, other reference images would be those of mars one.
Rick, do you have any reference images?
(https://informator.news/wp-content/uploads/2017/09/gg.jpg)
(https://peopledotcom.files.wordpress.com/2016/08/mars-one-800.jpg?w=800)
I would imagine that instead of sending all the material there, we would:
1. Send big robotic 3d-printer rovers, for creating thick walled, concrete-like buildings from the Mars soil to protect against radiation and micro-meteorites. In an iglo or dome like shape, because sphere shapes can handle the strongest pressures and impacts.
2. Install heating tubes and spray insulation material on the wall.
3. Print a 2nd outer wall over this.
4. Insert 2 prefab airlocks, windows and machines(all wrapped in plastic) into slots that were kept open in the design.
5. Cover the outside with a special version of Tesla's own solar roof tiles and battery for power storage on the inside.
6. Spray cover the inside with a strong resin or something to make it smooth, non-toxic to humans and completely air-tight.
7. Remove the plastic covers and done, 'only' need to provide air, water, food, soil, plant seeds, tools etc.
Some examples:
(https://storage.googleapis.com/cdn.thenewstack.io/media/2014/10/contour-crafting-robotic-3d-printed-construction-9.jpg)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fwww.esa.int%2Fvar%2Fesa%2Fstorage%2Fimages%2Fesa_multimedia%2Fimages%2F2013%2F01%2F3d-printed_lunar_base_design%2F12501079-1-eng-GB%2F3D-printed_lunar_base_design_fullwidth.png&hash=410e26f1a6739a41a6707b2e07b67904f5145ae3)
(https://www.thesun.co.uk/wp-content/uploads/2017/10/nintchdbpict000361830614.jpg?strip=all&w=960)
(https://ourexplorers.com/wp-content/uploads/2015/09/sfero-mars-colony-3d-printing.jpg)
See: https://ourexplorers.com/mars-colony-3d-printing/
Thanks for the pictures. :)
Advancing in creating a hud for the player. :-X
(https://pbs.twimg.com/media/DVhxgR8X4AI8ra0.jpg:large)
You are again falling into the old habbits of creating "visuals first".
Until the game "works" you can draw plain text exposing your "debug values" (or player score or time left ...).
bye
Ron
(https://pbs.twimg.com/media/DViM7Z7W4AA-b7e.jpg:large)
I'm working on a to-do list. In version 1.0 we will have something very simple to play.
I was thinking and it's inevitable, in the end I'll have to do the hud, the base, I'm barely a month into this, and the idea is to finish a game in this year, even if it's a mission.
However, from my point of view this is under control, it is not like the other projects where I abandoned them simply because the code was really awful to maintain, now everything is more orderly, but I go step by step.
Greetings.
Translated with www.DeepL.com/Translator
Hud Player Beta. ;D
The next step is to create the room, something very simple, very small as a reference to where the player will arrive to restore his oxygen system. Then the starting point.
(https://pbs.twimg.com/media/DViWh2gWAAE4qTJ.jpg:large)
A simple prototype of habitat. :-X
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi65.tinypic.com%2F6rhu04.jpg&hash=907e879a70c10beb6eae2732d40e46de4b0404f1)
(https://pbs.twimg.com/media/DVirDNDXcAAYThJ.jpg:large) :o :o
Also nice model.
Model granted for free NASA resources. :P
https://nasa3d.arc.nasa.gov/search/mars
(https://pbs.twimg.com/media/DViuxrnXcAEm9sK.jpg:large)
When I look at the previous scene, I think that car doesn't quite fit into that picture. Do you agree with that?
Okay, here's how it goes.
You've fallen 700 meters from the nearest habitat, your pressurized suit has a microchip where oxygen escapes, so there's little time left to reach the habitat.
You will only have the eyes to find the dwelling that can be seen in the distance, and run towards it, if you fail to reach, you die.
Good luck!
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi68.tinypic.com%2F2aijyqc.jpg&hash=de761e8090669753b1973b6a68c7aaa777376fa1)
..why oxygen will be inside microchip ? It cant work like that for both, puny human as well as fried micro..
Sorry the translator doesn't help much, I meant a micro hole.
Seeking to correct the performance drop problem. Screen Windows. :'(
Repeat : elapsed = MilliSecs() - time : Until elapsed
ticks = elapsed / period
tween# = Float(elapsed Mod period) / Float(period)
For k=1 To ticks
time = time + period
If k = ticks Then CaptureWorld
WorldStep(0.0005)
UpdateJugador( jugador.TJugador, vehiculo\chassis\ente, camara.TCamara )
UpdateWorld
Next
RenderWorld( tween )
Quote from: Yue on February 09, 2018, 11:55:31
Sorry the translator doesn't help much, I meant a micro hole.
You wrote that because of the microchip your suit is leaking oxygen. Naughty Alien wrote, that this wont be possible.
@ performance drop
This is not visible in your game loop logic - I assume somewhere in your "UpdateJugador" or "WorldStep" something is taking longer than expected.
@ 0.0005
Is this - by any chance "period" or something expressable in "x * period" or "period / x"? Avoid this constant value if it is not a constant one but a dynamically assign one (depending on another value - like "period").
tween# = Float(elapsed Mod period) / Float(period)
-> it is enough if one part is casted to "float" (int/float = float, float/int = float, float/float=float, int/int=int). But that is a very very minor thing - nothing dropping performance.
bye
Ron
I have debugged this, and found the cause of the underperformance. It is the rocks, regardless of whether it has a low fading range the yield is hit from 60 to 30.
I have 8000 rocks however only a few are visible as I use fading at a certain distance and likewise at a short distance the collision is triggered.
; ---------------------------------------------
; Proyecto : TestPace X.
; Programador : Yue Rexie.
; Sitio Web : http://www.iris3dgames.ga
; fichero : TRocas.bb
; ---------------------------------------------
; Nota : Tipo TRocas
; Objeto Rocas.
; ---------------------------------------------
Global piedras.TRocas = Null
Type TRocas
Field id%
Field roca%[8000]
Field pxRoca[8000]
Field rocaMesh.TMalla
End Type
Function Init_Rocas.TRocas()
Local self.TRocas = New TRocas
self\rocaMesh.TMalla = Init_Malla("Roca.b3d")
For r = 1 To 8000
self\roca[r] = CopyEntity( self\rocaMesh\ente )
EntityTexture ( self\roca[r], sombra3\texSombra, 0, 3 )
;CreateShadowCaster ( sombra1\sombra, self\roca[r] )
Next
Return ( self.TRocas )
End Function
Global tx%
Global ty#
Function SetPositionStones(rocas.TRocas )
For r = 1 To 8000
EntityAutoFadeMode(rocas\roca[r], True)
EntityAutoFade( rocas\roca[r], 150, 180 )
PositionEntity ( rocas\roca[r],x + Rnd(-1500,1500), 60,Rnd(-1500,1500), True )
rocas\pxRoca[r] = BodyCreateHull(rocas\roca[r] , 0 )
RotateEntity ( rocas\roca[r], Rand(-10, 10), Rand(-360, 360), Rand(-10, 10))
ScaleEntity ( rocas\roca[r], Rnd(01, 1.6), Rnd(1, 1.6) ,Rnd(1, 1.6) )
ty = TerrainY( colinas\ente, EntityX(rocas\roca[r], True ), EntityY(rocas\roca[r], True ),EntityZ(rocas\roca[r], True ) )
PositionEntity ( rocas\roca[r], EntityX(rocas\roca[r],True ) , ty+0.3, EntityZ(rocas\roca[r], True ) )
Next
End Function
Function UpdateColRocas( )
Local rocas.TRocas = Null
For rocas.TRocas = Each TRocas
For n = 1 To 8000
If EntityDistance( rocas\roca[n], vehiculo\chassis\ente) <10 Or EntityDistance( rocas\roca[n], jugador\jugador\ente) <10 Then
phBodySetSleep( rocas\pxRoca[n], False )
phBodySetPos rocas\pxRoca[n],EntityX(rocas\roca[n],False ), EntityY(rocas\roca[n],False ) , EntityZ(rocas\roca[n],False )
phBodySetRot rocas\pxRoca[n], EntityPitch(rocas\roca[n],False),EntityYaw(rocas\roca[n],False),EntityRoll(rocas\roca[n],False)
; EntityColor ( rocas\roca[n], 255, 0, 0 )
; EntityFX ( rocas\roca[n], 1 )
Else
phBodySetSleep( rocas\pxRoca[n], True )
; EntityColor ( rocas\roca[n], 0,255,0)
; EntityFX ( rocas\roca[n], 0 )
End If
Next
Next
End Function
Function DeInit_Rocas()
Local selfs.TRocas
For selfs.TRocas = Each TRocas
For r = 1 To 8000
If selfs\roca[r] Then
FreeEntity selfs\roca[r]
selfs\roca[r] = 0
End If
Next
Delete selfs.TRocas
Next
End Function
Performance deterioration occurs when I use rocks in Windows display mode. If I launch the executable in full-screen mode, performance does not deteriorate, so I have no idea what's going on. :'(
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi65.tinypic.com%2Fzxp2zq.png&hash=4a9ce1da099c8fe94734807157037d545d14a6f6)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2F11r408m.png&hash=7159ef54750022a7c8ac819a98f98ef8a3c5d966)
It should be noted that the performance is not affected only frames per second, because within the tween, in a way compensates the movement of the character, the car, etc. is compensated.
Eureka!!
Const FPS=60 ; 60
period=2000/FPS ; Solved new period, not 1000.
time=MilliSecs()-period
Repeat
Repeat : elapsed = MilliSecs() - time : Until elapsed
ticks = elapsed / period
tween# = Float(elapsed Mod period) / Float(period)
For k=1 To ticks
time = time + period
If k = ticks Then CaptureWorld
WorldStep(0.0005)
UpdateJugador( jugador.TJugador, vehiculo\chassis\ente, camara.TCamara )
UpdateWorld
Next
RenderWorld( tween )
Undoubtedly something happens, I always like to limit myself to Blitz3D, the performance is affected by several factors that I still don't fully understand, but the rocks are the main cause of the problem, and I can't quite understand this, the fact is that this improves greatly if it runs in full screen.
The debugging process involves several factors, testing, lowering the width and height of the height map, putting in less rocks, I think I have to find a balanced solution in the end.
(https://pbs.twimg.com/media/DVsg_3oW0AA2HUD.jpg:large)
Everything points to the rock system in the deterioration of performance, so I won't put rocks on the ground, I discard them for the moment. :'(
Although without the rocks it still looks pretty. No? :-[
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi63.tinypic.com%2F73exw0.png&hash=0957b1ec63d1c23ca77dd2ff53bdd4c82f615040)
Code bucle Main.
Const FPS=60
period=1000/FPS
time=MilliSecs()-period
Repeat
Repeat : elapsed = MilliSecs() - time : Until elapsed
ticks = elapsed / period
tween# = Float(elapsed Mod period) / Float(period)
For k=1 To ticks
time = time + period
If k = ticks Then CaptureWorld
WorldStep(0.00005)
UpdateParticulasRuedas(vehiculo.TVehiculo )
UpdateParticles()
;ResetVehiculo( indicadores.TIndicadores, vehiculo.TVehiculo, jugador.TJugador, camara.TCamara )
MontarVehiclo(vehiculo.TVehiculo, jugador.TJugador)
UpdateJugador( jugador.TJugador, vehiculo\chassis\ente, camara.TCamara )
; UpdateColRocas()
UpdateWheels( vehiculo.TVehiculo )
UpdateWorld
Next
RenderWorld(tween)
StartDraw
DrawHud()
InfoDebug(fuenteBlitz.TFuente, vehiculo.TVehiculo )
EndDraw
UpdateDist_Sombras( sombra1, sombra2 )
HideEntity vehiculo\chassis\ente
UpdateShadows ( vehiculo\chassis\ente,tween)
ShowEntity vehiculo\chassis\ente
Flip(1)
If KeyHit(KEY_ESC) Then
Exit
End If
; Capture Screen.
If KeyDown(KEY_P) Then
GuardarImagen()
End If
Forever
And we have the ship that lands on Mars in an emergency.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi67.tinypic.com%2Fe68w7c.png&hash=98716635c3eb51f888447eb262aed51bd0fc287a)
Thanks for the model to Piotr Kupsc. :)
https://www.artstation.com/piotrkupsc
I see an optimization to do, but it is quite complex to implement, so don't focus on that until you have more gameplay... (the idea is to use zones on your map (for example each one 100unitsx100units), and when you create a rock, you put it in a zone, and then instead of doing 8000 checks and updates, you only do the checks and updates in the zone where player is and in the zones neigboor to this zone (in total 9 zones of 100x100). So this greatly reduces the checks and updates.
The Landing Zone.
Some effects of smoke and debris for later.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2F97ljef.png&hash=011d07e8de7525fedd817ceb1556d4e2274788df)
Thanks You RemiD. :)
(https://pbs.twimg.com/media/DVuU63JWsAEJSQL.jpg:large)
Okay, that's it for today, 10:21 at night. Tomorrow I start 24-hour shifts from 7am to 7:30am on Monday. So I'll see you later. Happy Night.
Wow, starting to look really good. Is this Blitz3d+FastLibs still? Nice.
This is could really become a full game.
I really like the atmosphere, fog and lighting. Though the vehicle comes across bit large compared to the building,
but of course one would need a large vehicle on a place such as Mars with bad terrain and all.
Hi Rick, the vehicle is really big, but it's two-seater, so a human about the height of a front tire must be high.
The fact is that I'm determined to make a game this year, I think it's inevitable, and at the moment I'm stuck in the rocks, but I think that can be solved.
On the other hand, if it is the same as always Blitz3D + Fastlibs + FastImage + Newton + Winfix. dll.
:)
Quote
The fact is that I'm determined to make a game this year,
Glad to hear it. Good luck.
Today at work I realized that the project is not going well on my laptop. So I started chasing the white rabbit to try to solve the problem. The problem was that the terrain looked white without any kind of texture and what happened is that the graphics card of this laptop, only supports four layers of texture, while the computer of the house eight, so for it to work, I have to sacrifice the layer where I set the shadows so that it works here with four layers and in the house with eight, the disadvantage is that the shadow here has a very short range, but at home it does not have a very short range.
; Solved Problem laptop
If GfxDriverCapsEx\TextureMaxStages > 4 then
EntityTexture ( terreno\ente, sombra2\texSombra, 0, 4 )
Else
fadeSombra = Init_Textura("fade.png", 59)
ShadowFade sombra1\sombra, fadeSombra\ente
End If
Can you post 2 pictures that show the difference?
Laptop
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi67.tinypic.com%2Fwbcwb6.png&hash=acfe1d758024b89e27ffc680ad00c67449e05c19)
Computer Home.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi68.tinypic.com%2F2hpoqhu.png&hash=cc59581151263450ac66d3ead9e0c8278c802a75)
Rock test.
I have 1500 rocks that are randomly displayed according to the player's position on the ground in a 360 degree range.
This way the performance is not hit, as the last rock out of visible range passes forward in a new position.
This will give the impression that the entire terrain is covered with rocks.
8)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2Fossv48.png&hash=5a774dffb61bd40eb04ee6804a07c27fd075c82e)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2F35901p3.png&hash=58b8d3eaa671e5eb88fca2db1b218ef13387d63d) :)
:)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2Fogw4qu.png&hash=72f22c1cae46ea3f27d335925d8f2fa2f335c55c)
Rock. :)
(https://pbs.twimg.com/media/DV42YmYXcAAIkIg.jpg:large)
Test Full Screen.
All for today. ZzzzZZZzzzZZZ
(https://pbs.twimg.com/media/DV480e7WsAA7N08.jpg:large)
imo>>your particles should have a lighter color than the sand on the gorund since more light is lighting the particles.
And maybe less particles spread, because as it is now, it looks like the vehicle is doing "burnout"
What color do you think might be the best, the same color of the sky would be a good choice?
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2F72dnwg.png&hash=890eaf36fa0f9b7f3c60dbd2a544b92957528a36) :-X
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi67.tinypic.com%2Fqrc74k.png&hash=04ba387d577e16dc5991c72ec31e27c83c048f50) :-X
Well, a little poetry, I've been in the project for a month and a half, lots of graphics and no playability, and it's that knowing me, I'm sure that working at the point of cubes, spheres is not very motivating that you can say.
To date, this seems to be working fine, all under control, and the big secret for this to work for me is to have a project structured in several files and although blitz3d is not object-oriented, I try to make it in my mind, so I have the program split into files like TCamera, TCube, TMesh and by a custom in BlitzMax I have something like this.
Translated with www.DeepL.com/Translator
; ---------------------------------------------
; Proyecto : TestPace X.
; Programador : Yue Rexie.
; Sitio Web : http://www.iris3dgames.ga
; fichero : TCamara.bb
; ---------------------------------------------
; Nota : Tipo TCamara
; Objeto Camara.
; ---------------------------------------------
Global camara.TCamara = Null
Type TCamara
Field id%
Field padre%
Field ente%
End Type
Global id_Camara%
Function Init_Camara.TCamara( padre% = False )
Local Self.TCamara = New TCamara
id_Camara = id_Camara + 1
Self\id = Self\id + id_Camara
Self\padre = padre
Self\ente = CreateCamera( Self\padre )
CameraClsColor ( Self\ente, 238, 187, 142 )
CameraRange ( Self\ente, 0.1, 5000 )
CameraFogMode ( Self\ente, True )
CameraFogColor ( Self\ente, 238, 187, 142 )
CameraFogRange ( Self\ente, 0, 500 )
FogMode 2
FogDensity 0.002
Return ( Self.TCamara )
End Function
Global cameraDist% = 10
Global camxa#
Global camya#
Function UpdateCamara( entidad%, self.TCamara )
Local mxs#
Local mys#
Local mousespeed# = 0.5
Local camerasmoothness# = 4.5
If MouseDown(2) Then
cameraDist = cameraDist + (MouseYSpeed() * mousespeed)
If cameraDist < 10 Then cameraDist = 10
If cameraDist > 25 Then cameraDist = 25
MoveMouse GraphicsWidth() / 2, GraphicsHeight() / 2
Else
mxs# = CurveValue(MouseXSpeed() * mousespeed, mxs, camerasmoothness)
mys# = CurveValue(MouseYSpeed() * mousespeed, mys, camerasmoothness)
camxa# = camxa - mxs Mod 360
camya# = camya + mys
If camya < 0 Then camya = 0
If camya > 45 Then camya = 45
cameraDist = cameraDist + (MouseZSpeed() * 3)
MoveMouse GraphicsWidth() / 2, GraphicsHeight() / 2
RotateEntity self\ente, camya, camxa, 0.0
If cameraDist < 10 Then cameraDist = 10
If cameraDist > 25 Then cameraDist = 25
EndIf
x# = EntityX(entidad%)
y# = EntityY(entidad%)
z# = EntityZ(entidad%)
PositionEntity ( self\ente, x, y +1, z )
MoveEntity ( self\ente, 0, 0, -cameraDist )
End Function
Function CurveValue#(newvalue#, oldvalue#, increments)
If increments > 1 Then oldvalue# = oldvalue# - (oldvalue# - newvalue#) / increments
If increments <= 1 Then oldvalue# = newvalue#
Return oldvalue#
End Function
Function Deinit_Camaras()
Local selfs.TCamara
For selfs.TCamara = Each TCamara
If selfs\ente Then
EntityParent( selfs\ente, 0 )
FreeEntity selfs\ente%
selfs\ente = 0
End If
Delete selfs.TCamara
Next
End Function
For me it's the only viable way that I have learned to keep this from getting out of hand, as I have learned on my own, the most reasonable thing is that it's wrong, but this way I feel comfortable.
Now, and the gameplay?, well fifteen days to think about it, and get a simple game where from the landing zone on Mars has to reach the nearest room, Simple no? well sometimes everything is much easier in our minds.
It is necessary to understand the limitations of Blitz3D, when this happens it is much easier to deal with it, so that's it, I have to go to work, today I have to clean a garbage room, sometimes I find interesting things.
Greetings.
Translated with www.DeepL.com/Translator
RemiD was not talking about changing the hue (the balance of "red green blue") but the light level. In other (but not "correct") words: brightness should be increased.
Dust particles are small stones. If you can: have a look for a very thin stone (must be <1mm I guess). Now hold this stone to the sky and have a look: it brightens up. This is called (I think so at least) transluscency. While laying on the ground line from "top" shines through but you wont see much difference because the ground below is "darkening" the stone (you see the "stones behind the stone"). Now a heavy storm lifts up all these very very tiny stones ("dust particles"). Light can travel through that stones unhindered (you look to the "sky" - which shines through).
Another physical effect is that the light source is bigger than the particle (from your point of view). Just think of why sun behind earth creates that "corona effect".
bye
Ron
The only thing I can think of at the moment is to modify the particle mixture. :-X
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi68.tinypic.com%2Fotgh8l.png&hash=a72c3bd716bd8fbd478ff5529697766913b863c7)
For the particles, i suggest to use the same color than the color of the sand (ground), but a lighter version of this color...
Particles new color.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi66.tinypic.com%2Fjfevz9.png&hash=6d2e1699cacde73a973172f4a129a29aa0f4a36c)
Collision of rocks
The task for today is simple, I need the car to collide with the rocks, but obviously it doesn't have to do it with the 1500 rocks, if not with the one that are closest to each of their tires.
The plan is to activate a body of physics for each tire but that all these bodies are asleep unless the distance is too close to the car. Let's see if it works. :'(
Did you knock over some Marsian animals? Ok, it is called "red planet" but it should look like your ground texture - just brighter. Even the color tone of the background dust/fog is suiting better.
If you do not know your ground color: take the texture. Open it up in your painting program, use a "blur" (eg. gaussian blur) so it gets really really blurred. Then use the eye dropper on the very "monotone colored" image and you got the average color of your ground texture.
You could even do that programmatically: for every pixel in the texture you add to a total rSum, gSum, bSum and divide by amount of pixels at the end. This way you could assign a color right on game start. If you change the ground texture - you will get a suiting color automatically.
You could even check where your wheels are on the "ground" - and if you knew the position, you knew the "texture coordinate" too. Now imagine you have split your texture into a grid of 20x20. For each of these 400 cells you calculated the average color. You have had an array of 400 colors.
Calculating where your wheel is on the texture allows to know which "cell" it is on. Use this cell's color to emit particles of that color.
BUT ... this is graphics, not gameplay.
bye
Ron
With what you've told me about the load of information, I'm amused about the animals on Mars. :D
The rock collision works that depending on the distance of the car, a rigid body is positioned in the position of the visible rock, it is not perfect, because if we have two rocks very close together only one will have collision, but I think you can leave it that way.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi65.tinypic.com%2F64dqaf.png&hash=d34b90480c07a34f6b51b3a48eeee56603439665)
On the particles, I have a simple function that gives the color to those particles, a starting and transition color.
ParticleType_SetColor Smoke,128,0,0,40,255,0,0
ParticleType_SetColor Rocks,128,64,0,40,128,64,0
Function CreateEmitter_Rocks% ( padre% = False)
Local EM%,Rocks%,Smoke%
EM = CreateEmitter( padre% )
; ROCKS
Rocks = CreateParticleType()
ParticleType_SetImage Rocks,8
ParticleType_SetSpeed Rocks,4,5
ParticleType_SetSize Rocks,.005,.05,0.05, 0.03
ParticleType_SetAlpha Rocks,1,0,0
ParticleType_SetWeight Rocks,4,5
ParticleType_SetRotation Rocks,1,400
ParticleType_SetColor Rocks,128,64,0,40,128,64,0
ParticleType_SetEmissionAngle Rocks,3,0
ParticleType_SetStartOffsets Rocks,-0.1,0.1,-0.1,0.1,-0.1,0.1
ParticleType_SetLifeTime Rocks,400
ParticleType_SetBounce Rocks,-7,.5,16
ParticleType_SetPulsation Rocks,0.05
ParticleType_SetAddedBlend Rocks,0
; SMOKE
Smoke = CreateParticleType()
ParticleType_SetImage Smoke,5
ParticleType_SetSpeed Smoke,2,2
ParticleType_SetSize Smoke,0.01,1,0.7, 0.5
ParticleType_SetAlpha Smoke,.1,.3,-1
; ParticleType_SetWeight Smoke,8,5
ParticleType_SetRotation Smoke,1,45
;ParticleType_SetColor Smoke,238, 187, 142,40,128,64,0
ParticleType_SetColor Smoke,128,0,0,40,255,0,0
ParticleType_SetEmissionAngle Smoke,3,0
ParticleType_SetStartOffsets Smoke,-0.4,0.4,0,0.5,-0.01,0.2
ParticleType_SetLifeTime Smoke,6000
ParticleType_SetBounce Smoke,-5,1,10
ParticleType_SetAddedBlend Smoke,0
; Emitter_SetSound EM, "bang.mp3",0
Emitter_AddParticleType EM, Rocks, 0,360000,400
Emitter_AddParticleType EM, Smoke, 0,360000,1800*2
Return EM
End Function
I suppose you can do something to improve the color and the only way is trial and error. :'(
As I described: set the color to the "average color" of the ground texture. vary it a tiny bit here and there (each created particle has a slightly different color then - very subtle!). Brighten up the color a bit to take into consideration the tinyness of the particles (transluscency, light coronas....).
Later on you could improve that visual by having a "GetGroundColor(x,y)" function returning a color for the ground under a given x,y coordinate. HOW this is then implemented, can be discussed later. My approach would be some kind of "grid" as you know the underlaying textures (if you have meadows, sands, water... this would vary then). This allows for some precalculated colors to avoid dynamical "color averaging" processes.
bye
Ron
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi65.tinypic.com%2Fmrcq6p.png&hash=e9f1247c707c6afa05bf5f529211056dee93910e) :'(
Something strange is going on here, but I can't get close to a color similar to the floor. I guess it's a limitation of Blitz3D or I don't know what it might be.
Okay, I'm gonna leave the particulate matter at that. :-\
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi68.tinypic.com%2F2w5q5on.png&hash=44d16dd8bda59a6d21abb53474c3906eede34e8e)
Alpha version 0.9 released. :-X Edit Frist Post.
I won't implement not correcting more graphics at least for the time being.
We have 3 points Zone A: Landing zone B: Explorer zone C: Shelter.
The main idea and lend to suggestions. It's getting to the shelter before the oxygen runs out and you die. How could that be possible?
Well, I've thought that the oxygen he has to run out will allow him to reach the explorer and get some oxygen back there and then continue to the refuge.
If you have a better idea than this, I'd like to hear it.
Translated with www.DeepL.com/Translator
https://gamejolt.com/@Yuhe ;D
Making known my game in development.
(https://p5b4y2t6.ssl.hwcdn.net/fireside-post-image/700/1220273-vtfzff5d-v3.jpg)
:-* ;D :P
Okay, I work on graphics and Yue on gameplay. :D
(https://pbs.twimg.com/media/DWQtFpZW0AI0Sw4.jpg:large)
This looks worse imo. I would keep the ground texture with a unique color (with different shades) and add rocks shapes (meshes) of the same color (and the lighting shading will make them visible)...
Quote from: RemiD on February 17, 2018, 19:52:00
This looks worse imo. I would keep the ground texture with a unique color (with different shades) and add rocks shapes (meshes) of the same color (and the lighting shading will make them visible)...
:o :'(
Did it get better or worse?
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2F25rz22w.png&hash=f828fccbb906b00c1dd99b5e34c96a284da857b0)
Ok, finish!
I'm gonna go paint my nails. It's a lot easier than dealing with Mars textures and colors. :P
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2F122ytc4.png&hash=ec626021237cb795a4b55f82ba20f5fd71697f3b) 8)
the last one looks nice enough (imo)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi67.tinypic.com%2Fhwkcjt.png&hash=9d515acf9131bc9d8f7f0f246544e748a932f62d)
The graphic artist can't do any more, her nails are drying out. :-X
Well, playability, I repeat that to myself over and over again, however to get there it was necessary to solve a problem with the rocks, which when touched by the explorer, were flying in a very exaggerated way. So that's been sorted out.
The point is that the player starts next to a scorched capsule, and has to run a few meters to another emergency capsule to remove one of the inert bodies from the oxygen condenser and take a little more oxygen time, then has to look for the car that is very close and run very fast to the nearest habitat.
That's it, let's just hope we get through this week.
Translated with www.DeepL.com/Translator
Yue, I expect my salary very soon. :P
The oxygen bar that directly affects the general health bar.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi67.tinypic.com%2Fo6d82f.png&hash=b2bf26be6e59d9e2e7970ecc2675778e548a44e1)
If he's a good boy, I'll give him allowance for school. ;D
(https://pbs.twimg.com/media/DWRquuvXcAAgL8Z.jpg:large)
:'( :'( :'( :'(
I had to enlarge the terrain, this implies that the player can't reach the limit so quickly, a terrain of 10,000 x 10,000 units, however I have to think of something so that it doesn't reach the edge.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2Fou6p0k.png&hash=44eb3e7688981ae03b588ef146bc02bd6c17fcb5)
Almost everything is ready for a simple game, a mini-game, something small for a single mission.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi66.tinypic.com%2Fp6ufp.png&hash=54582a8c1c9570509437cebf99f772fa939ac664)
Whenever I go to the laptop on Sundays, I find myself with a drastic blow to performance, and everything keeps pointing to the rocks, however this is the best optimized thing that gives me my head.
The summary is that on my laptop it's slow, since starting the graphics card is limited, starting with the fact that it only supports 4 textures per entity, unlike the computer of the house that supports 8 textures.
Undoubtedly the good thing about this is that I can guarantee that it will run in slower teams, but in the end everything points to the rocks, and I have to think of an option that changes the density of the rocks in the radius in which they are visible, this implies that the higher the density, the more rocks visible, the lower the density or no visible rock.
What really is a lifesaver in these cases in the tween technique, that the truth is not how it works, I only know that the smaller FPS, it seems to rearrange the speed of animated objects and movements in the world trying to compensate for the performance drop.
In addition to the above, it is necessary to implement another option to manipulate the detail of the terrain, I currently manage a value of 80,000 8000, and if I underestimate that this helps to improve performance.
That's all for today, from my job as a watchman in a building.
Repeat : elapsed = MilliSecs() - time : Until elapsed
ticks = elapsed / period
tween# = Float(elapsed Mod period) / Float(period)
For k=1 To ticks
time = time + period
If k = ticks Then CaptureWorld
WorldStep(0.00005)
UpdateParticulasRuedas(vehiculo.TVehiculo )
UpdateParticles()
MontarVehiclo(vehiculo.TVehiculo, jugador.TJugador)
UpdateJugador( jugador.TJugador, vehiculo\chassis\ente, camara.TCamara )
UpdateWheels( vehiculo.TVehiculo )
;ResetVehiculo( indicadores.TIndicadores, vehiculo.TVehiculo, jugador.TJugador, camara.TCamara )
; UpdateColRocas()
UpdateWorld
Next
RenderWorld()
RenderPostprocess FE_Blur + FE_Glow ; + FE_Contrast
UpdateShadows ( camara\ente )
UpdateDist_Sombras( sombra1, sombra2 )
Quote
I currently manage a value of 80,000
80000 triangles for an empty terrain ?
Good luck running your game on medium end / low end (=most) computers
No, I was wrong, the value is 8000, it is the value that is set with terrainDetail, by the way RemiD, for what is the Morph value of that command?
TerrainDetail ( self\ente, 8000, True)
8000 is ok for a terrain of this size, i think.
The morph function is to make the heights (vertices or the ROAM terrain) go progressively from previous position to next position, rather than instantly, but it will probably be slower to activate it.
Thanis Yue RemiD. :)
Well, I've recovered some performance on my laptop. What was done was to implement a variable that has the density of rocks from 1 to 100, the highest value implies more rocks close to the player in a 360 degree radius at a distance of 250 units.
On the laptop with a density of 10, it goes to an average of 60 frames per second.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2Fuabmf.png&hash=7554c0e9b0f1615dc8adab00af84381e86dd849f)
The bug of death.
When something happens and I have no idea what it could be.
I've spent the last 30 minutes trying to understand why I can't compile in Blitz3D, and inevitably the brain automatically starts to make assumptions that although they don't make sense, they are evaluated to solve the problem. This has happened before, and it's one of the reasons why the project sucks, but I think I've developed a certain ability to solve these problems without losing my mind.
Well, the brain begins to make conjectures, it's a nightmare especially when I have to open the door, and close it, I'm in a trance trying to solve the problem, so at home can reach very late at night to solve that. But everything has turned out fine, after doing tests, keeping the sanity first of all, not moving anything or at least doing with a lot of beforetionn, I found the problem, The load thread decompresses the encrypted resource files and sends them to the windows temporary directory. If the application crashes during the load are left in this file in the temporary directory, so I had to go to that directory and delete that content and for my relief this was solved.
So looking at this from a positive point I corrected something that speeds up loading from the thread. This is sometimes really epic.
Translated with www.DeepL.com/Translator
Is this because you use some hacking features of fastext ?
Especially use FastPointer to load resources in the background and process a load screen. The error occurred because it had an erroneous parameter in the Bones library, which compresses the resources into img files. Textures. img, Fonts. img etc. These files are sent during the process of uploading to the windows temporary directory, and after being uploaded they are deleted from that location.
From my development studio. :P
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi66.tinypic.com%2F10gb3x1.jpg&hash=4ce3a39c9a81980899eec86297a5b4856d3fe45f)
Oxygen
I already have the mechanism by which the oxygen descends, it does it very slowly in optimal conditions of the oxygen condenser. But it is expected that at the start of the game the oxygenator will be damaged, the air escapes and it is time to look for a viable solution to live a little more on the red planet.
Now, if the character runs, the consumption will be higher, so it may be more practical to slow down in certain circumstances.
You should couple/link the oxygen usage to the heart beat rate.
So the faster the heart beats, the more you breath and the more oxygen is used.
Now when Running you increase from "BEAT_RATE_IDLE" to "BEAT_RATE_RUNNING" in very big steps. So eg. "+30% per second". But when stopping running you wont decrease beat rate by 25 or 30% each time but just 5%/second.
This then means that "not running" will use less oxygen as you do not loose that much oxygen because of the "stopped running" phase.
Running phases are then needed if _external_ things happen: eg a dust storm is coming up and you need coverage, or a batter will get broken if you do not connect it fast enough to your "home" or "car".
Above in some kind of "code":
Const BEAT_RATE_RUNNING:int = 180
Const BEAT_RATE_IDLING:int = 70
local heartBeatRate:Float = BEAT_RATE_IDLING
[...]
'in your loop/player.update()
If state = STATE_RUNNING
heartBeatRate = Min(BEAT_RATE_RUNNING, heartBeatRate * 1.2 * deltaTime) 'add 20%
ElseIf state = STATE_IDLING
heartBeatRate = Max(BEAT_RATE_IDLING, heartBeatRate * 0.95 * deltaTime) 'subtract 5%
Else
...
EndIf
(deltatime = fraction of a second, if you have eg. 60 updates per second, this will be around 0.015)
Of course you could add more state - and their transitions. So eg. jumping could add some heart beat rate _on_top_.
In that case your function should be done "differently" and a bit more difficult (setting a maximum/target value which is affected by "jumping" or other actions. This value is to set when a specific state is set - so "start running" or "start idling" would set a target value while "jumping" would temporarily increase the target value).
For now I would go with something like what I "coded" above.
bye
Ron
Thanks You Derron. :)
Love the way the vehicle jumps on the rough terrain. It really adds realism to it.
Would be fun to see 2 cars racing carefully not to hit the gas full speed otherwise accidents happen, and on Mars ambulances are hard to come by. :D
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi68.tinypic.com%2Fwvammh.png&hash=37e7e9ea7083f055b9f4e5d1bcd1c38d1e73ef84)
Okay, I already have the oxygen system related to the player's life bar. Oxygen has a stable average when the oxygen condenser is in perfect operation, if the player runs consumes more oxygen, if the condenser is defective the oxygen runs out much faster than usual, it means that something is wrong. When oxygen reaches zero, the oxygen indicator changes from green to red and the player's life bar starts to be affected constantly until it reaches zero and dies
Translated with www.DeepL.com/Translator
And that left the main loop of the program, the most efficient way to avoid performance losses.
Repeat
For sss.rock = Each rock
If EntityDistance(vehiculo\ruedas[0]\ente, sss\entity ) < 2 Or EntityDistance(vehiculo\ruedas[1]\ente, sss\entity ) < 2 Or EntityDistance(vehiculo\ruedas[2]\ente, sss\entity ) < 2 Or EntityDistance(vehiculo\ruedas[3]\ente, sss\entity ) < 2 Or EntityDistance(jugador\jugador\ente, sss\entity ) < 5
ScaleEntity ( piedraPx\ente, sss\scale, sss\scale, sss\scale)
RotateEntity( piedraPx\ente, sss\pitch,sss\yaw,sss\roll)
phBodySetPos( pxPiedra, EntityX(sss\entity),EntityY(sss\entity),EntityZ(sss\entity) )
End If
Next
; DENSITY=Normalize(Perlin3D(EntityX(jugador\jugador\ente),0,EntityZ(jugador\jugador\ente),8,1,0,3),0,1,0,100)
;
; If DENSITY>500 Then DENSITY=500 Else If DENSITY<5 Then DENSITY=500
Repeat : elapsed = MilliSecs() - time : Until elapsed
ticks = elapsed / period
tween# = Float(elapsed Mod period) / Float(period)
For k=1 To ticks
time = time + period
If k = ticks Then CaptureWorld
WorldStep(0.00005)
UpdateWorld
UpdateParticulasRuedas(vehiculo.TVehiculo )
UpdateParticles()
MontarVehiclo(vehiculo.TVehiculo, jugador.TJugador)
UpdateJugador( jugador.TJugador, vehiculo\chassis\ente, camara.TCamara )
UpdateWheels( vehiculo.TVehiculo )
UpdateRocas()
RenderWorld(teewn)
RenderPostprocess FE_Blur + FE_Glow ;+ FE_Contrast
StartDraw()
InfoDebug(fuenteBlitz.TFuente, vehiculo.TVehiculo )
DrawHud(jugador.TJugador)
EndDraw()
UpdateShadows ( vehiculo\chassis\ente)
UpdateDist_Sombras( sombra1, sombra2 )
Next
Flip(0)
If KeyHit(KEY_ESC) Then
Exit
End If
If KeyDown(KEY_P) Then
GuardarImagen()
End If
Forever
LiberarMemoria()
Today I have made a great advance, to improve the performance, since when I was recording a video frame rate was affected drastically, the video I am currently uploading remains stable at 63 / 64 frames per second. I thought it was badicam that inferred in this, but apparently I had a bad coding. So just wait a little longer for the video to be on Youtube.
And before bedtime, the simple pitcher of the game. Where I hope to put screen resolution options, shadow quality, rock density on the ground, activate the brightness effect and other geese.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi68.tinypic.com%2F54gkcy.png&hash=41f1407f37c396438e28425baaa79e41bceace01)
@Yue>>to "improve performance", you should rather do a distance check between the center of your vehicle and each rock, not between each wheel / vehiclepart and each rock...
Also, maybe add less rocks but bigger rocks. They are barely visible...
The issue of rocks and tires is that I only have one collider per rock, if I put the center of the vehicle two rocks or more will only have collision.
With a density of 10 I have 45 rocks visible in a range of 360 from a distance of 250 units, with a density of 100 I have 700 rocks. I'll make more rocks big.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi66.tinypic.com%2Foir98i.png&hash=17a7665a731fb2a927561e42e85de91dbc8bdcde)
There is no need to do "collision checks" to find out if you want to display something or not.
Center of your car is Vector 1 (XYZ)
Center of a rock is Vector 2 (XYZ)
Then you calculate the distance between those two vectors: if the distance is bigger than X, then do not render it.
Distance of XYZ:
with the help of pythagoras (a² + b² = c²) you can calculate distances of 2 points on a flat surface ("2D"). With the result of this, you can add the 3rd dimension (z) and do the same again.
local distanceX:Float = abs(x - otherVec.x)
local distanceY:Float = abs(y - otherVec.y)
local distanceZ:Float = abs(z - otherVec.z)
'a² + b² = c²... pythagoras
local distanceXY:Float = Sqr(distanceX * distanceX + distanceY * distanceY)
'save computation time if no z-difference was done
If distanceZ <> 0
'this time a² is the result of the first 2D triangle
Return Sqr(distanceXY * distanceXY + distanceZ * distanceZ)
Else
Return distanceXY
Endif
@ collisions
Have a big bounding box for your car - so it contains all elements of the car. Only do detailled collision checks (left front wheel, right front wheel, ...) if the bounding box hit the bounding box of other elements.
Also: do not check for collisions with items far away from you.
If an element is sized 1x1x1 and is away 10 units, then it cannot hit you.
@ rocks
As said, use some bigger rocks as I assume it is not the render speed which limits your frame rate but the amount of objects (and possibly a not really "optimized" way of doing the stuff).
bye
Ron
@Derron, Always something new to learn. :o :)
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi66.tinypic.com%2F2csjsj9.png&hash=fc93624bfc25f5dcb0570c68a5c5436e78c1b7fa)
Well, I have optimized the issue of rocks, with a density of 100%, I have on screen rendered 160 rocks, with a density of 10% only 13 rocks. Now the problem is with the collisions, the corgo hull assigned to each rock near the car, it is impossible to scale its size to match that of the visible rock, so it only had rocks of a single size. I'm trying to think of something.
Scale of rock = scale of hull.
Also: you scale a rock once ...on level creation. So you could create the hull there.
But again: do not check for collisions with objects way too far away.
Bye
Ron
..i would drop SQR from distance check as it is as accurate as it can be without it, but speed will increase as this check is looping a lot i guess..
This undoubtedly leads me to two options, rocks of the same size, or simply without rocks.
The idea is that the rocks update their position, their rotation around the car, regardless of where the fence exists 160 rocks are updated, giving the impression that the whole terrain is full of rocks. I have to come up with a different solution to this problem.
The solution is rocks of the same size, but the simple trick is that the position of the ground that rock can be more exit, or more sunk on the ground, so it seems that the rock is a little smaller.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi63.tinypic.com%2F27wuele.png&hash=1820fe2326d0484c61cd240446a96443fd088ca7)
Okay, rocks with the dirty trick.
rocks joined in the ground and other exits
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi63.tinypic.com%2F5djlau.png&hash=c8d6993cf6e135fb39fb78d4c6c6af270271572e)
Well... everything seems to be back to normal.
I already have the rock system, I'd like someone to try this, to know if it's going well on a machine other than my own.
Now it is to continue with the gameplay, I have the landing point, and the point b where you get to the habitát, in the middle of the road you find the car that will take you faster to your destination. I have to think of the oxygen condenser, an item that recharges your oxygen in a small amount.
Translated with www.DeepL.com/Translator
I have already implemented a kind of indicator, when we touch certain objects with which we can interact, the color of the object is illuminated. Useful for interacting with objects, using the E key.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2F2iiiy9u.png&hash=667bebacd99afa6c16a8d55fa79edd57c49fc019)
My daughter wanted to change the landing capsule model.
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2F2u4h207.png&hash=9bec6a2289e0f599f42c93c9785a0f135415bd65)
Is that a Spunik model?
Kak dela tovarish Yue ;-)
Thought so too when seeing the satellite uhmmm I mean space ship.
A cosmonaut of the early ages of space exploration. On a top secret journey to Moon. After an distrastreous accident he got shock cryonic-frosted and travelled for years through space. Crashing on Mars he recognizes that 50 years have passed and human kind already landed there before....
bye
Ron
Quote from: Derron on February 22, 2018, 12:14:16
Kak dela tovarish Yue ;-)
Thought so too when seeing the satellite uhmmm I mean space ship.
A cosmonaut of the early ages of space exploration. On a top secret journey to Moon. After an distrastreous accident he got shock cryonic-frosted and travelled for years through space. Crashing on Mars he recognizes that 50 years have passed and human kind already landed there before....
bye
Ron
...actually, this sounds like a very appealing story..
I thought so too ... creating some "Trash/B-Movie"-like game. With all the "Soviet Union - US of A"/cold-war thingies.
Hey, one could even create some kind of alternative universe - as if the NASA / CCCP (aka SSP - Soviet Space Program) used tech of 40 years ago to land on mars.
Means big "Walkie Talkies", green-screen radars, ...
Benefit of this: it would not be so comparable to other games - and so it does not need to compete with their graphic quality.
bye
Ron
Great ideas. :)
The oxygen condenser, when starting the game this object will be in a range very close to the landing capsule in a range very close with a random position. If it's not found soon, the oxygen is gone and game over.
(https://pbs.twimg.com/media/DWp5R7EX0AAYv6u.jpg:large)
QuoteA cosmonaut of the early ages of space exploration. On a top secret journey to Moon. After an distrastreous accident he got shock cryonic-frosted and travelled for years through space. Crashing on Mars he recognizes that 50 years have passed and human kind already landed there before....
Isn't that a similar plot as
Buck Rogers in the 25th century? :D
https://www.youtube.com/watch?v=1a-HhylQj48
BTW the 2nd part of the intro with the girls dressed in silvery outfits is a real killer. Love the way Erin Gray shakes her hair. Not quite sure what it has to do with the movie though. lol
(https://www.syntaxbomb.com/proxy.php?request=http%3A%2F%2Fi64.tinypic.com%2F11h708x.png&hash=b34d0fc36512ce06e8ba7c59badc16ddd17f65c3) ;)
The oxygen condenser is a high-tech instrument that has an internal oxygen charge that can last up to 7 hours if it is in good condition. These devices are often damaged and need to be recharged, either in a car or in a habitat by means of an oxygen generator. :-X
(https://pbs.twimg.com/media/DWqSMixXcAACJIX.jpg:large)
https://iris3dgames.itch.io/testpacex (https://iris3dgames.itch.io/testpacex) ;D
That's looking pretty slick buddy. Hope I'll have time later tonight to give it a try.
The last post, I bid farewell to this community, always grateful to everyone, especially Rick, Derron, Mr. Adams, Mr GarborD, and someone I never heard from again that it was Yasha from the old forums (unless I changed my nickname) and all those who were always willing to teach me something. Thank you, everyone.
I will continue with my project, so I wish you the best of luck. The Internet is a world that at certain times can be very uncomfortable more specifically because of my nature.
Goodbye and good luck.
Translated with www.DeepL.com/Translator
(https://pbs.twimg.com/media/C6PVMAUXMAAKuNj.jpg)
https://iris3dgames.itch.io/testpacex
??
Did I miss something?
Me too??
...what just happened ?? :-X
:(
QuoteDid I miss something?
It was probably my fault for This Post (https://www.syntaxbomb.com/index.php/topic,4186.msg13412.html#msg13412)
Unless it's not then I guess we've all missed something :o
I'm missing Yue's updates.. :(
They had a nice gfx style.
How can we get him back here?
As he posts on his itchio page, he is still alive doing things (programming and has internet access too :-)).
https://iris3dgames.itch.io/testpacex
bye
Ron
I know, but I don't feel I want to switch to yet another page to check.
Already checking here and AGK's site, that's enough for me.
Maybe you find him at the M2 site. He posted his screenshot there.
Don't dig monkey2..don't wanna go there.. ;D