Digging the Twin Peaks references.
Printable View
Digging the Twin Peaks references.
hi, i just bought this yesterday. it so cool. how do i add my own textures for ground? i swapped in my character/player good but the ground is eluding me. its always grass
Schrodinger, thank you for the new version that add a lot of cool stuff.
In the future, do you think that it will be possible to improve the quality of the shadows?
Thanks a lot therickman!
That's really appreciated.
If you (and any other user of course!) need some assistance,
or just want to share some thoughts/suggestions/projects,
be sure to check out the P3D discord server,
invitation link is printed on the last page of the user manual!
ratty: ehehe glad you noticed, yeah I remember the new episodes were out since few weeks when I was working on that example,
I had to do that XD
markofthedog: thanks for the support and appreciation!
It depends on how the ground is made, since P3D features different solutions to create polygons,
in most of the examples the "ground" is a 3D object, you'll likely find a "repeating ground" object lying around in the frame,
in that 3D object's alterable values you'll find a reference to "my_model": that's the name of the object containing the texture.
It's very likely a "3D_P3D" object sitting on top-left of the frame, in the map layer. You can change the animations there to modify the texture.
Check out the user manual for "3D objects" for a complete guide on how to use them!
(just seen the same question on Youtube, it was probably you I guess?)
crian: thanks for the kind words!
I would say it's not possible, no shadow casting in P3D within Fusion2.5,
unless a higher shader model becomes supported, which is very unlikely I think :(
*******
Now sharing a little WIP for a realtime 3D preview feature
which is coming soon to T-mesh, the scene editor for P3D
(this feature was suggested by users on the discord channel, btw!)
The video is very crap, but I was on a very rush, sorry XD
https://www.youtube.com/watch?v=65QuPBaAqYY
thankyou for the help, i found the spot :) now im stuck on how do i set a texture to repeat?
im having trouble with projectiles. it shoots, but not correctly. all moving objects bunch up, turn black and launch away from me. any idea?
hello im back again, im making a Mario&luigi DTB-ish game using the isometric RPG example, but I cant find a way to angle the camera down while still pointing at the player.
also the camera has an angle of 45 degrees right, how do I get rid of that?
I lost the manual PDF so I cant get info from that atm
Attachment 25930
this angle just doesn't feel right for what im trying to make
I think I found a bug with Angles.
If I set the XAngle to the ZPosition of the player, it shoots up and down fine on the X-Rot Axis. (Up and Down)
If I set the Angle of the projectile to OAngle(CameraX,CameraY) it tracks fine in the Y-Rot Axis. (Left and Right)
The Y-Angle value doesn't do anything.
However if I try to combine them both I can only fire accurately between angles <40 and >300 because its only tracking in one axis (likely the Z-Axis is screwed because the manual mentions that the Z-Axis is handled automatically for sprites). Anyone have an idea how to fix this?
Beyond that Amazing 2.1 Update. schrodinger you're amazing dude, that height map system is god-tier stuff. How the hell did you get it to run so fast LOL.
For context as well this issue is to do with AI shooting. The player can shoot up and down fine using the default methods built into the engine. This was done using the Castle example's Plasma ball.
funmaker: the isometric camera has fixed angles to recreate an "isometric" perspective (well, kinda-of, a true isometric representation is actually not something a realistic 3D render can do, since it mimics "real" vision and isometric projection is an idealized "distortion" of reality, not the way eyes perceive)
so if you want a different set of angles from the ones it gives, the quickest way is probably setting your own customized camera using the "free-cam" template, and setting its X,Y,Z angles the way you want (and the camera X,Y,Z position to some fixed spot relative to the player, i.e. Xplayer+200, Yplayer+200, Zpos player + 300)
Hope this helps!
MrCyberpunk: thanks a lot for the appreciation :)
If I get the issue, you'd like to control a projectile by tracking both the left-right angle (Z angle in P3D) and the up-down angle (X angle in P3D). I think that should work ok, so if when firing you set:
projectile Z angle to (OAngle(playerXY,targetXY))
projectile X angle to (OAngle(player(d)Z,target(d)Z) >> where (d) is the Phytagorean distance
it doesn't work right?
(actually, OAngle won't allow you to use (d) to get the X angle, so you'll have to use the Atan2 expression which if I'm not too rusty should be like: Atan2(Y1-Y2,X2-X1))
i ended up finding the angles set in the projection engine group, I made it how I want it, but now I found a different problem...
is there anyway to stop the weird thing on the side of the screen?
the cubes aren't being rendered at the edge for some reason (these are cube shapes, not cube tiles)
Attachment 25947
if your wondering why the resolution is so low, im trying to make a ds-ish game
Yeah I've done the Atan2 method and its still broken. It's probably Gimble Lock (ie. One of the rotational values can't go beyond the required value as such becomes stuck at 0).
I've got a solution for this that works with firefly fine but the way you've implemented it is different because your axis are all different so its thrown me off a bit.
There's a way to calculate all 3 axis using a single Atan2 which would be preferable to the current implementation of tracking it separately.
Whilst I was happy with Firefly and how it worked there, the issue was collision detection. Meanwhile I try to do the same thing in P3D and I have the collisions working great but the gimbles don't line up at all because something is flipping the UP axis which in turn inverts the other 2 axis which is not ideal.
I'll do a public service for everyone. To get tracking working on 3 axis using Atan2 all you need to do is the following:
--- Items below are attributes for the "AIPlayer" object ---
//Where AI is to where AI is shooting at
DistanceX = PosXAIPlayer - PosXTarget
DistanceY = PosYAIPlayer - PosYTarget
DistanceZ = PosZAIPlayer - PosZTarget
//Rotates the AI gun to where it needs to shoot - projectiles are then fired using that heading
RotX= 0 - ATan2(DistanceY( "AIPlayer" ), Sqr(( DistanceX( "AIPlayer" ) * DistanceX( "AIPlayer" ) ) + ( DistanceZ( "AIPlayer" ) * DistanceZ( "AIPlayer" ) )))
RotY only needs to track in X and Y. As such an Atan2 should cover it.
This code works in Firefly.
This is so that when the object moves past the 0 point and into negative its calculated correctly so that the value does invert correctly because it also takes into account height as well. This is how in Fusion you can track an object in 3D space with all 3 vectors simulated. This gets you a heading, apply speed value to it and the projectile moves along the RotX and RotY (I'm not tracking the Tumble because there's no point). I hope you can do something with this because this took me about a month to develop in firefly due to having to figure out how to track it for player and AI (which is different for both. But you already have the player one working so I don't need to share that).
Reason I'm doing this is because I'd like to salvage the work I did over a year ago for firefly and port it into P3D. I really like your collision implementation better its much faster and your lighting engine is better because there's no hard limits.
Hope this helps anyway. And for the firefly users feel free to use that code.
Very nice work funmaker!
Mmmm that look weird,
if you're not into the discord channel you might have missed some of the few additional snippets I posted some months ago, to enhance or fix a few issues,
you could try this one and see if there's any improvement:
https://www.dropbox.com/s/p9hzgqv4lu...ustum.mfa?dl=0
(it is a very suggested download for anyone using P3D2.1 by the way!)
in the original code there was an issue in the way the view frustum was calculated (this also slightly improves performances because of a better early-rejection of polygons to render)
if you tried this and it does not work, feel free to send me your .mfa to support[at]lizardking.co
I'm not sure when I'll be able to take a look though :|
@MrCyberpunk that's a quite interesting chunk of code I'll like to dissect, in better times, thanks for sharing!
Yeah as you mention I've chosen a quite arbitrary set of conventions for angles, mainly, my goal was keeping it "readable" to a Fusion user having a topdown view of the axes in the frame editor, but this also causes headscratching when you have to implement non-native expressions!
This is weird though, as you only need "yaw" (Z angle in P3D) and "pitch" (X angle in P3D) and not need "roll" (Y angle in P3D) for projectile tracking, gimbal lock shouldn't be an issue, and it shouldn't be so painful to make, unless I'm overlooking something! I'll try hard to find a spot and give it a look (as you can see from my very rarified presence unfortunately I'm not sure when) and post eventual results of this search :D
Still couldn't get to tinker with Fusion unfortunately but wanted to add just one thing that popped in mind yesterday: isn't what you need basically what the "look-at" camera does in P3D? >>> always orienting towards a target location
You can check the expressions I used to set the look-at camera orientation for Z and X angles in the camera code - look at camera group, shouldn't that work for your needs too?
(considering obviously the target being not the player XYZ position but the desired aiming XYZ location)
That should actually. I might give it a go. Thanks.
Edit: Nicely done! That fixed it.
AngleX = ATan2(Z_position( "camera_tool" ) - ( Z_position( "Group.Reference Points" ) + height( "Group.Reference Points" ) ), Distance(X( "Group.Reference Points" ), Y( "Group.Reference Points" ), Alterable Value X( "camera_tool" ), Alterable Value Y( "camera_tool" )))
Is there a way to "billboard" a static sprite (Foreground Scenery) at 90 degrees angle with a free cam? When i try, it will be invisible.
At 80 degrees angle with free cam i can see that the static sprite do not follow my cam angle.
Hello!
Have you tried removing the "C" option from P3D_engine object "multi_options" string? That's the so-called "Cardboard" effect P3D applies to sprites,
removing this character will disable the sprites "squeezing" and just leave them flat, don't know if this can be a solution for your need?
Other than that, there's no additional builtin processing for sprites.
If you scroll some pages back this thread I think I was mentioning a "billboarding" solution with shapes, but perhaps it's not what you were looking for either...?
Whoa just as good as the firefly plugin only cheaper you sir are a miracle worker if not for this plugin I would have a harder time making 3D games of my own. :)
I heard that P3D is incompatible with 2.5+ DLC. Any chance to change that? Correct me if I am wrong. I don't have the DLC yet.
Chily I think you mean it's not built in / (optimised) for 2.5+
It's probably best to leave it being compatible with 2.5 & 2.5+
I couldn't imagine Schrodinger wanting to make two versions when it already works fine for both.
Thanks @elvisish and @aenever for the replies :)
As said P3D was developed in 2.5 and no optimization/upgrade to 2.5+ has been made.
2.5+ with DX11 could bring some really neat addition to the engine,
newer shader models allow for many more constants, shaders where dramatically squeezed to fit limitations in P3D2.1 and this led to features cuts, primitives limitations etc.,
plus converting shaders to DX11 alone *could* (speculation) bring better performances.
But sadly this is all out of my reach right now so the current version is all P3D can offer.
If anyone would be curious/willful/corageous/silly XD enough to jump in the daunting task of converting current P3D shader pack (20+ shaders) to the latest supported DX version for 2.5+, I would happily welcome him and give all of my blessings X)
Aren't some of the Clickstore shaders converted by @Yves like Chily's underwater shader and some of Looki's, IIRC? Or do they have to be done by the original developer ?
This is a great bit of kit. Not being the brightest button in the box, even I can understand. Thanks to the documentation and examples. Great work.
@Chriz45 really appreciated, thank you,
glad the docs and examples are standing together and hope you're having fun with it :)
Nice to see you pop your head up the forums again, schrodinger! I hope you're keeping well :)
Does this support animated 3D meshes/skinned characters and android?
@Volnaiskra : thanks and cheers to you Vol :) I'm keeping up moderately well X)
but programming works are mostly out of my radar right now.
Miss the forum, all of the super nice people in here, the fun and the puzzling mind-challenges!
JumpUp_Games: none of what you mention unfortunately. It is a simpler environment with limited modeling capabilities.
As for android, it's currently not supported due to the fact P3D heavily relies on pixel shaders
(in case anyone's interested, I should have a "wireframe-only" 3D *engine* for android sitting somewhere.. but it's just wireframe lines and no faces/occlusion so I doubt anyone would make any relevant use of it)
Ah, I see. Thanks for the response.
Still hoping for @Yves to update the DX11 implementation so that P3D can be converted to DX11. Is it impossible to add the back buffers to DX11 or is it a matter of getting around to it? P3D is a pretty popular engine for Fusion and 2.5+ has been out for a year and a half now, it really should be possible to use without having to still rely on DX9 (which was replaced by DX10 in 2006/2007).
https://imgur.com/a/BTwfg9F
Such a nifty tool! I can't wait to start an actual project with it!
https://youtu.be/jJztm-Zykic
Silent Hills P.T hallway recreated in P3D! Are there still any plans to update to DX11? The potential is limitless.