Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 14 Next capture
2021 2022 2023
2 captures
13 Jun 22 - 14 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by MGUELfig189 · Sep 04, 2021 at 09:00 AM · transform.rotationforwardintantiate

how to make Directional Blocks?

You know Minecraft right? If so, look, I try instant objects but they put their faces according to the angle the player is at like Minecraft when you put a kiln block, this always has the face where the player sees that's what I want to do sometimes it works with transform .rotation but this is not very precise I want it to be only 0, 90, 270, 180 in advance thank you very much for the help. alt text

  RaycastHit hit;
         if (Physics.Raycast(camera.position, camera.forward, out hit, rayDistance))
         {
             //Debug.Log(hit.transform.name);
             var select = hit.transform;
             if (select.CompareTag(GameObjectTag))
             {
                 var selectRenderer = select.GetComponent<Renderer>();
                 if (selectRenderer != null)
                 {
                     selectRenderer.material = highlightGameObjectMaterial;
                     if (Input.GetKey(KeyCode.Y))
                     {
                         
                         Vector3 spawnSpot = hit.collider.transform.position + hit.normal;
 
                         //Instantiate(well, spawnSpot, Quaternion.identity);
                         //Intantiate(well,spawnSpot,Quaternion.Euler);
                         //Instantiate(well,spawnSpot,Quaternion.Euler(transform.forward));
                         //Instantiate(well, transform.position + (transform.forward), transform.rotation);
                         Instantiate(well, spawnSpot, transform.rotation);
                        
 
 
                     }
                 }
                 selectedGameObject = select;
             }


furnaceminec.jpg (92.9 kB)
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
0
Best Answer

Answer by Gustav2302 · Sep 04, 2021 at 11:52 AM

When you instantiate a gameobject the third argument sets the rotation and right now you have set the rotation to be the same as that of the gameobject that holds the script (which is the same gameobject that holds the camera, i presume). Instead of using 'transform.rotation' (the rotation of the current gameobject), you should instead use 'Quaternion.Euler(x, y, z)', where you define the rotation with the x, y, and z values. So line 21 should look something like this:

 Instantiate(well, spawnSpot, Quaternion.Euler(x, y, z));


Comment
Add comment · Show 6 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image MGUELfig189 · Sep 04, 2021 at 06:12 PM 0
Share

@Gustav2302 yes, I understand, but QuaternionEuler (0.90.0); I already tried and I am only going to instantiate only pure objects with that angle which is (0,90,0) = 90 and I want it to depend on where the player is seen as if they were the cardinal points 0, 90, 270, 180 beforehand thanks bro is appreciated

avatar image Gustav2302 MGUELfig189 · Sep 04, 2021 at 06:25 PM 0
Share

I see. Then it's just:

  Instantiate(well, spawnSpot, Quaternion.Euler(0, Mathf.RoundToInt(transform.rotation.eulerAngles.y / 90) * 90, 0));

Edit: Spelling error

avatar image MGUELfig189 Gustav2302 · Sep 04, 2021 at 06:44 PM 0
Share

@Gustav2302 Sorry for the inconvenience bro, but Mathf 'does not contain a definition for' RountToInt ' create a variable?

Show more comments
Show more comments

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

125 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

transform shooting forward 2 Answers

Difference between transform.forward and transform.position.z? 1 Answer

How to anticipate the Vector3.forward of the enemy? 1 Answer

Scaling in the forward direction not working. 2 Answers

Configure wheel colliders 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges