I want to do when a object moves camera will smooth that move. I can only explain this with images.
Is this possible and what is name of this effect. And is this possible for 3D objects (or only 2D).
The effect that you're looking for most likely is Motion Blur. You'll have to look into Post-Processing for that.
Here's a resource:
https://learn.unity.com/tutorial/post-processing-effects-motion-blur-2019-3
Related
I'm trying to make a car (or any object) in rotate when sitting on a plane surface or inside a tube shape. Currently the car acts like it has 0 grip on those surfaces (even tough the car moves without any problems when accelerating, but the objects don't move the car)
What I've tried so far:
putting a Physics Material on the tube & plane but has no effect
tuning the parameters of the Physics Material, no effect
marking the animation's Update Mode of the tube and plane as "Animate Physics", no effect
increasing the traction of the car (uses RCC), no effect
increasing the mass of the car..nothing
increasing mass of wheels, nothing
tried googling the problem, either didn't write the right terms or just couldn't find anything
Any help would be appreciated.
Thanks!
You need to rotate the plane and the tube using their Rigidbody with the AddTorque method or similar. If you just rotate them via their transform it has no effect on the physics system.
After using Unity for over a year now for creating 3D games I'd like to do my first pseudo 3D or 2.5D game (or whatever it's called). What I mean is games like Clash of Clans or Boom Beach where objects are really 2D images rendered to give 3D feeling. Because I don't even know the correct word for that type of games it's really hard to get started. What I can think of is giving Camera rotation of (45, -45, 0) so that it looks down at the ground from the upper right corner and then creating empty gameObjects with Sprite Renderers and setting their rotation to (22.5, -45, 0) so that they face the camera. I don't know if that's how it's really done so could somebody give me a link to some neat tutorial or something because I'm stuck.
The keyword you are looking for is isometric projection.
You can use Unity to create that effect with 3D graphics. You need to set the camera rotation to (45, -45, 0) and set the Camera Projection to Orthographic.
If you want to only use 2D graphics then the graphics are made in such a way that they are drawn in an angle that it looks like you are looking at them in 45 degrees.
If you search for isometric unity then you should find a ton of tutorials for Unity.
I have been creating a physics Model Newton Cradle(pendulum) in Unity 3D, but have been facing difficulties in rotating and zooming camera around object, applying momentum conservation for pendulum objects.
I'm not sure if this will help but based on the title of this statement[?] I'm guessing you want to rotate the camera around a target. This is some simple code that may help you on your way.
target=GameObject.FindWithTag("Cradle").transform;
transform.LookAt(target);
transform.Translate(Vector3.right * Time.deltaTime*2);
edit the number after deltaTime to change the speed and the Vector 3 for the translation. Obviously change "cradle" to whatever the tag of object you want the camera to focus on.
What's the best method for pulling back to show more of a view in a 2D OpenGL iPhone game? For instance, in Tiny Wings, when the bird flies toward the top of the screen the bird and the scenery pull back to simulate the bird going higher in the sky. Would this effect be better achieved by scaling all the sprites proportionally, or by using glOrthof? In any case, I'm assuming that the zoom-out factor is inversely proportional to the player's y position.
You almost certainly want to use glOrthof so all you're changing is how the camera sees the scene. This avoids recomputing all the normals and such in the scene, saving quite a bit of work. It's also easier for you to implement.
We are trying to achieve the following in an iphone game:
Using 2d png files, set-up a scene that seems 3d. As the user moves the device, the individual png files would warp/distort accordingly to give the effect of depth.
example of a scene: an empty room, 5 walls and a chair in the middle. = 6 png files layered.
We have successfully accomplished this using native functions like skew and scale. By applying transformations to the various walls and the chair, as the device is tilted moved, the walls would skew/scale/translate . However, the problem is since we are using 6 png files, the edges dont meet as we move the device. We need a new solution using a real engine.
Question:
we are thinking of instead of applying skew/scale transformations, that if given the freedom to move the vertices of the rectangular images, we could precisly distort images and keep all the edges 100% aligned.
What is the best framework to do this in the LEAST amount of time? Are we going about this the correct way?
You should be able to achieve this effect (at least in regards to the perspective being applied to the walls) using Core Animation layers and appropriate 3-D transforms.
A good example of constructing a scene like this can be found in the example John Blackburn provides here. He shows how to set up layers to represent the walls in a maze by applying the appropriate rotation and translation to them, then gives the scene perspective by using the trick of altering the m34 component of the CATransform3D for the scene.
I'm not sure how well your flat chair would look using something like this, but certainly you can get your walls to have a nice perspective to them. Using layers and Core Animation would let you pull off what you want using far less code than implementing this using OpenGL ES.
Altering the camera angle is as simple as rotating the scene in response to shifts in the orientation of the device.
If you're going to the effort of warping textures as they would be warped in a 3D scene, then why not let the graphics hardware do the hard work for you by mapping the textures to 3D polygons, then changing your projection or moving polygons around?
I doubt you could do it faster by restricting yourself to 2D transformations --- the hardware is geared up to do 3x3 (well, 4x4 homogenous) matrix multiplication.