3D wishlist (last update 06/01/16)

Got an idea for enhancing PureBasic? New command(s) you'd like to see?
User avatar
DK_PETER
Addict
Addict
Posts: 904
Joined: Sat Feb 19, 2011 10:06 am
Location: Denmark
Contact:

3D wishlist (last update 06/01/16)

Post by DK_PETER »

Hey team

Particles:
Since we got LightLookAt(), EntityLookAt(), NodeLookAt(), CameraLookAt() - why not:

Code: Select all

ParticleEmitterLookAt(EmitterID, posX.f, posY.f, posZ.f)

Automatically calculate and change the particleEmitterdirection() towards the defined point in 3D space.

Code: Select all

NodeDirection(Node.i, x.f, y.f, z.f)
;param values -1 to 1

Code: Select all

EntityDirection(EntityID, x.f, y.f, z.f
;param values -1 to 1

Code: Select all

*Done*
Torusmesh = CreateTorus(#pb_any, InnerRadius.f, OuterRadius.f, NumOfSegments.i) 

*not done*
RectangleMesh = CreateRectangle(#pb_any, WidthSegmentNum.i, HeightSegmentNum.i, LengthSegmentNum.i)  ;Would look much nicer than always having to scale a cube.
Cut and slice mesh

Code: Select all

ResultMesh = CompoundMesh(#PB_Any, MeshID1.i, MeshID2.i)
Text3D: (Adding 'depth' to 3D text)

Code: Select all

Text3DMaterial(Text3DID, MaterialID(Material)) ;Add a material to 3D text.
Rotation of 3D text - like LightDirection()

Code: Select all

RotateText3D(Text3DID.i, DirectionX.f, DirectionY.f, DirectionZ.f)
The ability to dynamically change the camera display field.
Hide/Show a camera

Code: Select all

CameraDisplayChange(CameraID.i, percentX.i, percentY.i, percentWidth.i, percentHeight.i)
HideCamera(CameraID.i, #True/#False)
Water:
Water limited area - just like a plane but with the same options as Createwater.

Code: Select all

Res = CreateWaterPlane(#MeshID, TileSizeX, TileSizeZ, TileCountX, TileCountZ, TextureRepeatCountX, TextureRepeatCountZ, Transparency, Flags)
 +
SetWaterAttribute(#MeshID, WaterAttribute, NewValue) ; waveHeight, foam, details...etc...
 +
ScaleWater(#MeshID, x.f, y.f, z.f)

For testing purposes and easy access - it would be nice to have these at hand and not only using scripts.

Particle Emitter types:

Code: Select all

’Cylinder’, ’Ellipsoid’, ’HollowEllipsoid’ and ’Ring’ 
Affector:

Code: Select all

ParticlesLiniarForce(id.i, x.f, y.f, z.f)

Affector:

Code: Select all

ParticlesScale(id.i, ScalefactorOverTime.f)
External Texture sources. (Ogre3D plugin)
http://www.ogre3d.org/docs/manual/manua ... re-Sources

An Ogre3D upgrade would be very nice.

Best regards
Last edited by DK_PETER on Sat Aug 13, 2016 7:42 am, edited 34 times in total.
Current configurations:
Ubuntu 20.04/64 bit - Window 10 64 bit
Intel 6800K, GeForce Gtx 1060, 32 gb ram.
Amd Ryzen 9 5950X, GeForce 3070, 128 gb ram.
User avatar
AndyLy
Enthusiast
Enthusiast
Posts: 228
Joined: Tue Jan 04, 2011 11:50 am
Location: GRI

Re: 3D wishlist

Post by AndyLy »

ParticleEmitterLookAt
I do not understand English very well, so I could be wrong, but
The particles are oriented to the camera. What is the meaning to direct them somewhere else?
'Happiness for everybody, free, and no one will go away unsatisfied!'
SMsF town: http://www.youtube.com/watch?v=g6RRKYf_Pd0
SMf locations module (Ogre). Game video: http://www.youtube.com/watch?v=ZlhBgPJhAxI
User avatar
DK_PETER
Addict
Addict
Posts: 904
Joined: Sat Feb 19, 2011 10:06 am
Location: Denmark
Contact:

Re: 3D wishlist

Post by DK_PETER »

@AndyLy

Yes..The particles are always oriented towards the camera.
If the particles are of same size (width and height) everything looks great
even when you tilt your camera up.

Again...I already know, how to take care of it, but ParticleEmitterLookAt() would be a nice touch. :)
Last edited by DK_PETER on Mon Jun 08, 2015 9:34 am, edited 1 time in total.
Current configurations:
Ubuntu 20.04/64 bit - Window 10 64 bit
Intel 6800K, GeForce Gtx 1060, 32 gb ram.
Amd Ryzen 9 5950X, GeForce 3070, 128 gb ram.
User avatar
AndyLy
Enthusiast
Enthusiast
Posts: 228
Joined: Tue Jan 04, 2011 11:50 am
Location: GRI

Re: 3D wishlist

Post by AndyLy »

All of these things (the orientation of the particles) is realized in Ogre scripts.
I understand you just want to PB was extended functional commands to work with particles.
'Happiness for everybody, free, and no one will go away unsatisfied!'
SMsF town: http://www.youtube.com/watch?v=g6RRKYf_Pd0
SMf locations module (Ogre). Game video: http://www.youtube.com/watch?v=ZlhBgPJhAxI
User avatar
DK_PETER
Addict
Addict
Posts: 904
Joined: Sat Feb 19, 2011 10:06 am
Location: Denmark
Contact:

Re: 3D wishlist

Post by DK_PETER »

All of these things (the orientation of the particles) is realized in Ogre scripts.
I know and I use particle script often myself.
I understand you just want to PB was extended functional commands to work with particles.
Exactly :wink:
Current configurations:
Ubuntu 20.04/64 bit - Window 10 64 bit
Intel 6800K, GeForce Gtx 1060, 32 gb ram.
Amd Ryzen 9 5950X, GeForce 3070, 128 gb ram.
User avatar
AndyLy
Enthusiast
Enthusiast
Posts: 228
Joined: Tue Jan 04, 2011 11:50 am
Location: GRI

Re: 3D wishlist

Post by AndyLy »

DK_PETER
Exactly
sorry, but 95% probability that they will say no :)
'Happiness for everybody, free, and no one will go away unsatisfied!'
SMsF town: http://www.youtube.com/watch?v=g6RRKYf_Pd0
SMf locations module (Ogre). Game video: http://www.youtube.com/watch?v=ZlhBgPJhAxI
User avatar
DK_PETER
Addict
Addict
Posts: 904
Joined: Sat Feb 19, 2011 10:06 am
Location: Denmark
Contact:

Re: 3D wishlist

Post by DK_PETER »

AndyLy wrote:DK_PETER
Exactly
sorry, but 95% probability that they will say no :)
Maybe...But I have a strong confidence in the team. :-)

Added a couple of extra wishes to the list.
Current configurations:
Ubuntu 20.04/64 bit - Window 10 64 bit
Intel 6800K, GeForce Gtx 1060, 32 gb ram.
Amd Ryzen 9 5950X, GeForce 3070, 128 gb ram.
Henry00
User
User
Posts: 88
Joined: Thu Jul 12, 2012 7:00 pm
Location: Germany
Contact:

Re: 3D wishlist

Post by Henry00 »

ParticleEmitterDirectionX(#ParticleEmitter[, mode])
ParticleEmitterDirectionY(#ParticleEmitter[, mode])
ParticleEmitterDirectionZ(#ParticleEmitter[, mode])
#PB_Absolute: get the absolute 'x' direction vector of the particle emitter in the world (default).
#PB_Relative: get the 'x' direction vector of the particle emitter relative to its parent.

Edit:
I agree with DK_PETER and would also like to see ParticleEmitterLookAt.
Last edited by Henry00 on Fri Apr 17, 2015 1:39 pm, edited 1 time in total.
IdeasVacuum
Always Here
Always Here
Posts: 6426
Joined: Fri Oct 23, 2009 2:33 am
Location: Wales, UK
Contact:

Re: 3D wishlist

Post by IdeasVacuum »

Generate 2D curve at intersection of plane and mesh....
IdeasVacuum
If it sounds simple, you have not grasped the complexity.
Post Reply