Thứ Ba, 6 tháng 12, 2022

code cho unity

 code cho unity

if (Physics.Raycast(transform.position, transform.TransformDirection(Vector3.forward), out hit, Mathf.Infinity, layerMask))

{ Debug.DrawRay(transform.position, transform.TransformDirection(Vector3.forward) * hit.distance,                     Color.yellow); Debug.Log("Hit"); } else { Debug.DrawRay(transform.position, transform.TransformDirection(Vector3.forward) * 1000,                         Color.white); Debug.Log("Not Hit"); } } }

ĐẶC BIỆT CÓ CODE ĐỂ  playercontrol có thể dùng Raycast đê xác định khoảng cách của vật thể  đang đến gần  để có thể đưa ra các tương tác thích hợp


Để đèn pin giống thật ta thêm ảnh tì vào cookies của  đền pin  và  ấn phải chuột vào chấm bên cạnh ô vuông mà ta vừa đưa ảnh vào và chọn  Clamp  vì nếu để  Repeat thì vầng sáng sẽ bị lặp rất xấu 
và đưa đoạn code sau vào  player và  sau đó kéo object vào ô  đói tượng 
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Flashlight : MonoBehaviour
{
    [SerializeField] GameObject myflashlight;
    private bool FlashlightActive = false; // begining status of Flashlight
    void Start()
    {
                myflashlight.gameObject.SetActive(false);
    }
 void Update()
    {
        {
            if(FlashlightActive == false)
            {
                myflashlight.gameObject.SetActive(true);
                FlashlightActive = true;
            }
            else
            {
                myflashlight.gameObject.SetActive(false);
                FlashlightActive = false;
            }
        }
    }
}


tệp DoorScript

using System.Collections;

using System.Collections.Generic;

using UnityEngine;


public class DoorScript : MonoBehaviour

{

    // Start is called before the first frame update

    Animator anim;


    void Start()

    {

        anim = GetComponent<Animator>();

    }

    

    void OnTriggerEnter(Collider col)

    {

        anim.SetTrigger("OpenDoor");  // tên trigger này trùng tên khi tạo trigger trên tab animator

    }

    void OnTriggerExit(Collider col)

    {

        anim.enabled = true;

    }

    void pauseAnimationEvent()

    {

        anim.enabled = false;

    }

}

lưu ý trong phần animator thì có 2 node là Idle và Open

state từ Idle  -> Open thì không có  Has Exit Time và  có trigger open

còn ngược lại  state từ  Open ->Idle có Has Exit Time và không có trigger nào cả    Thì nó  mới hoạt động  tốt

cửa có thêm Sphere Collider (mặc định của nó là Transform vaf Animator do ta vừa tạo thôi.

và nhớ tại 0.3s của animation OpenDoor ta thêm event sau đó tại cửa sổ bên phải inspector ta add Function chính  là tên hàm pauseAnimationEvent() mà ta tạo trong DoorScript nếu không khi cửa mở ra , ta đi vào thì cửa tiếp tục animation là nó đóng vào gây khó khăn khi ta đi ra đi vào

-------------------------------------------------------------------------------------------------------------

chuyen dong vat the 3d 

public float speed;

void FixUpdate()

{

        Float step =  Time.DeltaTime * speed;

        gameObject.transform.position =  new Vector3.MoveToward(gameObject.transform.position, Target.position, step);

}

code da test chuan roi

using System.Collections;

using System.Collections.Generic;

using UnityEngine;


public class autodoor : MonoBehaviour

{

    public Animator doorAnim;

    

    void OnTriggerEnter(Collider col)

    {

        if (col.CompareTag("Player"))

        {

            doorAnim.SetTrigger("open");   // open is a  name of trigger


        }

    }

    void OnTriggerExit(Collider col)

    {

        if (col.CompareTag("Player"))

        {

            doorAnim.SetTrigger("close"); // close is a name of trigger


        }

    }

}

trong do scripts duoc dua vao cai canh  cua chuyen dong len xuong (khong phai la parent  cua canh cua )



viết code  cho cửa ra vào chuẩn nhất



viết code  để khi người chơi tương tác với cái thang (vất thể bất kỳ nào đó)



boxcollider nằm ở Player ta viết:

...// lưu ý you need to change "using UnityStandardAssets.Characters.FirstPerson;" by "using StarterAssets;".

using UnityEngine;

using UnityStandardAssets.Characters.FirstPerson;

public Transform playerController;

bool inside = false;

public FirstPersonController  player;

public float speed =  3f;

void Start()

        {

            player = GetComponent<FirstPersonController>();

                inside = false;

            }

void OnTriggerEnter(Collider col)

{

    if(col.gameObject.Tag = "Ladder")

    {

            Debug,Log("Touching Ladder true");

            Player.enabled = false;

            inside = !inside;

    }

}

void OnTriggerExit(Collider col)

{

    if(col.gameObject.Tag = "Ladder")

    {

            Debug,Log("Touching Ladder false");

            Player.enabled = true;

            inside = !inside;

    }

}

void Update()

{

        if(inside == true && Input.GetKey("w"))

        {

                player.transform.position  += Vector3.up /  speed * Time.deltaTime;

        }

         if(inside == true && Input.GetKey("s"))

        {

                player.transform.position  += Vector3.down /  speed * Time.deltaTime;

        }

        if(inside == true && Input.GetKey("w")

            {

                    sound.enabled =  true;

                    sound.loop =true;

            }

            else

            {

                    sound.enabled =  false;

                    sound.loop = false;

            }

}

code xong ta kéo  scrips vào đối tượng FPSController 

Sau đó ta kéo FPSController vào thuộc tính thuộc phần scripts sau khi đã kéo vào FPSController

muc Player Controller  vào từ non(transform)  thành FPSControlller

và Player từ non thành script FPSController

còn với cái thang ladder ta kéo rộng  box collider của nó to ra hơn so với box mặc định của nó và check vào box is Trigger

Nếu player ở dưới  1 cầu thang có độ dốc thì nó có thể nhìn xuyên qua cầu thang đó để xử lý lỗi này ta thay clipping plan mặc định  từ 0.3 thành 0.1 của player

cũng thuộc player  field of view phần lớn của game ta đặt là 80 thay vì mặ định là 60

---------------------------------------------------------

new clip khi tạo animation là tạo 1 hoạt cảnh ví dụ clip : cửa mở , clip cửa đóng 

để copy clip : Ctrl + C , để dán clip : Ctrl  + V



Tư liệu phục vụ cho Unity

 tư liệu cho unity

unity 3d 

 how to add starter Assets (Third person Controlleer) in your scene and no Error

------------------------------------------------------------------


------------------------------------------------------------------------------------------------------




-----------------------------------


how to use diplacement in unity



làm code và trang bị cho khẩu súng

video:



-------------------------------------------------------------


ngay 1/1/2023

video:


video hướng dẫn làm thế nào để lập trình điều khiển  thiết bị di động  của game unity



làm animation với Deepmotion  tại đây  có mất  phí 12$/1 tháng , mixamo.com  là free

Tải free sound-efect 

tại đây  pixabay.com

tổng hợp những website  cho phép vẽ , tải mô hình 3D

tại đây

Sạc dự phòng thanh lý - Hàng ngon, giá mịn chỉ từ 50k

1. 3DC.io: Trang web vẽ 3D online tốt nhất

3DC.io là một trang web  tạo mô hình 3D trực tuyến với các bản vẽ 3D, văn bản và các hình dạng được xác định trước, giúp dễ dàng tạo mô hình 3D tuyệt đẹp bằng cách vẽ đối tượng 3D của riêng bạn hoặc nhập văn bản 3D trên trình duyệt của bạn. 3DC.io đi kèm với nhiều hình dạng được xác định trước mà bạn có thể trực tiếp chèn vào thiết kế của bạn và chỉnh sửa. 

3DC.io: Trang web vẽ 3D online tốt nhất

3DC.io: Trang web vẽ 3D online tốt nhất

Ưu điểm:

  • Giao diện đơn giản dễ dàng thao tác.
  • Có thể chụp lại màn hình một cách nhanh chóng với công cụ chụp ảnh.
  • Có thể chia sẻ thiết kế bất cứ lúc nào với thanh công cụ chia sẻ.
  • Hỗ trợ mô hình 3D có thể xoay đa chiều.
  • Hỗ trợ bảng màu với đa dạng màu sắc có thể tô màu vật thể hoặc chọn bút màu phù hợp.
  • Có thể sử dụng trang web để thiết kế luôn mà không cần đăng ký tài khoản.

Nhược điểm:

Trang web sử dụng ngôn ngữ tiếng Anh, nên bạn phải ở trình độ tiếng Anh cơ bản mới sử dụng được.

Link truy cập trang web https://3dc.io/app/

2. SketchUp: Phần mềm thiết kế, vẽ 3D online

Sketchup là phần mềm thiết kế, vẽ 3D online được dân kỹ thuật sử dụng khá phổ biến hiện nay. Sketchup là phần mềm 3D phổ biến hàng đầu thế giới và là lựa chọn hoàn hảo dành cho các: kiến trúc sư, kỹ sư, người làm phim, nhà phát triển game.

2. SketchUp: Phần mềm thiết kế, vẽ 3D online

SketchUp: Phần mềm thiết kế, vẽ 3D online

Ưu điểm:

  • Hỗ trợ người dùng phác thảo ý tưởng sơ bộ ban đầu nhanh chóng bằng các công cụ và tính năng trực quan, dễ thao tác.
  • Giúp người dùng dễ dàng quản lý và triển khai bản vẽ hiệu quả và nhanh chóng hơn với các trường layout.
  • Đảm bảo kích thước, tỷ lệ bản vẽ luôn chuẩn và chính xác tuyệt đối.
  • Cung cấp thư viện các mẫu bản vẽ thiết kế đa dạng, chuyên nghiệp.
  • Đảm bảo tính trực quan nhất cho bản thiết kế.

Nhược điểm:

Bạn phải đăng ký tài khoản mới có thể sử dụng.

Lưu ý: Bạn được dùng thử miễn phí. Sau đó, bạn phải trả phí cho các gói sau:

  • Shop: 119$/năm.
  • Pro: 229$/năm.
  • Studio: 699$/năm.

3. Sweet Home 3D: Website thiết kế mô hình nhà 3D online

Sweet Home 3D là một ứng dụng thiết kế nội thất miễn phí giúp bạn sắp đặt đồ trang trí trong căn nhà của bạn sau đó trích xuất ra định dạng 2D và xem ở dạng 3D. Công cụ này tích hợp nhiều công cụ vẽ tạo nên những hình dạng cơ bản trong ngôi nhà giúp bạn trang trí, thiết kế lại đồ đạc trong nhà một cách hợp lý nhất.

Sweet Home 3D: Website thiết kế mô hình nhà 3D online

Sweet Home 3D: Website thiết kế mô hình nhà 3D online

Ưu điểm:

  • Giao diện web hỗ trợ đa ngôn ngữ, trong đó có Tiếng Việt.
  • Giúp người dùng thiết kế dưới dạng 2D và xem hình ảnh trên nền không gian 3D.
  • Cho hình ảnh các mô hình thiết kế đẹp mắt.
  • Có thể tự xuất bản bản vẽ thiết kế dưới dạng PDF, ảnh vector, bitmap, video hay file 3D.
  • Có thể dễ dàng thay đổi các đặc điểm về vị trí, màu sắc và kích thước của bản thiết kế.

Nhược điểm:

Bạn phải đăng ký tài khoản mới sử dụng được.

4. tinkercad.com: Trang web vẽ 3D trực tuyến miễn phí

Tinker CAD được biết đến là một trong những trang web vẽ 3D phổ biến và dễ sử dụng dành cho những người mới bước chân vào ngành vẽ 3D. Tinker CAD cũng được sản xuất bởi công ty thiết kế phần mềm nổi tiếng là Autodesk. 

tinkercad.com: Trang web vẽ 3D trực tuyến miễn phí

tinkercad.com: Trang web vẽ 3D trực tuyến miễn phí

Ưu điểm:

  • Sử dụng để thiết kế mọi lúc, mọi nơi trên cả điện thoại và máy tính bảng.
  • Cung cấp các bản thiết kế có sẵn và cho phép chỉnh sửa dễ dàng.
  • Giúp người dùng thiết kế các hình vẽ dưới dạng 3D.
  • Cho phép xuất ra file STL, OBJ để sử dụng cho máy in 3D.

Nhược điểm:

Trang web không hỗ trợ ngôn ngữ Tiếng Việt, nên hạn chế với người dùng không biết ngôn ngữ khác.

Link truy cập trang web https://www.tinkercad.com/

5. vectary: Phần mềm vẽ 3D online

Vectary là một phần mềm tạo mô hình 3D trực tuyến. Vectary sẽ cung cấp cho bạn một thư viện rộng lớn về các đối tượng 3D, nơi bạn có thể chỉ cần lấy ra các đối tượng bạn cần để tạo mô hình của mình. Vectary hoạt động bằng cách sử dụng chức năng kéo và thả, có nghĩa là công việc nhanh hơn cho bạn trong thời gian thực.

vectary: Phần mềm vẽ 3D online

vectary: Phần mềm vẽ 3D online

Ưu điểm:

  • Cung cấp một thư viện rộng lớn các đối tượng 3D.
  • Cung cấp các tiêu đề web được kết xuất trước, kiểu chữ 3D, thiết kế gói.
  • Hoạt động bằng cách sử dụng chức năng kéo và thả giúp dễ dàng thiết kế cảnh 3D, mô hình và kiểu chữ.
  • Có thể tạo kết xuất ảnh thực trong vài phút ngay trên trình duyệt.

Nhược điểm:

Bạn phải đăng ký tài khoản mới sử dụng được.

Lưu ý: Bạn được dùng thử miễn phí. Sau đó, bạn phải trả phí cho các gói sau:

  • Premium: 12$/tháng.
  • Enterprise: Liên hệ.

Link truy cập trang web https://www.vectary.com/

6. 3dslash.net: Website vẽ 3D online

Lấy cảm hứng từ việc chơi game của con trai, nhà phát minh Silvain Huet đã tạo ra phần mềm 3D Slash vào năm 2013. Mục đích của Silvain khi tạo ra phần mềm này là muốn giúp cho người sử dụng có thể dễ dàng thiết lập các mô hình 3D. Trong phần mềm này bạn có thể thoải mái sử dụng rất nhiều các công cụ khác nhau để hình thành nên các mô phỏng thiết kế của mình.

3dslash.net: Website vẽ 3D online

3dslash.net: Website vẽ 3D online

Ưu điểm:

  • Có thể xóa hoặc sử dụng các khối nhỏ để tạo ra các sản phẩm 3D.
  • Có thể chuyển đổi từ thực tế sang 3D chỉ với bước tải ảnh lên và theo dõi chúng.
  • Độ chính xác cao với độ phân giải lên đến 1/10mm.
  • Các sản phẩm được tạo ra đảm bảo được độ tinh tế và cụ thể đến từng chi tiết.
  • Đồng bộ hóa trên tất cả các phương tiện.
  • Chia sẻ lên mạng xã hội và gửi đến in 3D.

Nhược điểm:

Bạn phải đăng ký tài khoản đăng nhập mới sử dụng được.

Lưu ý: Bạn được dùng thử miễn phí. Sau đó, bạn phải trả phí cho các gói sau:

  • PREMIUM: 2$/tháng.
  • SCHOOLS: 12$/tháng.
  • PROFESSIONALS: 20$/tháng.

Link truy cập trang web https://www.3dslash.net/index.php

7. figuro.io: Trang web vẽ 3D trực tuyến

Figuro.io là trang web vẽ mô hìn 3D trực tuyến miễn phí có thể được sử dụng để phát triển trò chơi, in 3d, kiến ​​trúc. Figuro là một ứng dụng mô hình đa giác cho phép bạn tạo các mô hình 3D và thao tác các đỉnh, cạnh và đa giác của chúng bằng các công cụ 3D mạnh mẽ khác nhau.

figuro.io: Trang web vẽ 3D trực tuyến

figuro.io: Trang web vẽ 3D trực tuyến

Ưu điểm:

  • Sử dụng để phát triển trò chơi, in 3D, kiến trúc.
  • Lập mô hình trực tiếp trong trình duyệt.
  • Lập mô hình đa giác với nhiều công cụ chỉnh sửa 3D.
  • Sử dụng các khối nhỏ để tạo ra các sản phẩm 3D.
  • Giúp người dùng thiết kế dưới dạng 2D và các hình dạng 3D.
  • Kho thư viện 3D để trưng bày các mô hình của bạn.

Nhược điểm:

Bạn phải tạo tài khoản để lưu các file đã tạo của bạn.

Link truy cập trang web https://figuro.io/Home/Welcome

8. sketchfab: Website thiết kế, vẽ 3D online miễn phí

Sketchfab là nền tảng hàng đầu cho 3D & AR trên web giúp quản lý nội dung 3D của bạn. Sketchfab là trang web chuyên sản xuất, mua bán và trao đổi các hình ảnh, đồ họa 3D với nhiều chủ đề đa dạng và phong phú. 

sketchfab: Website thiết kế, vẽ 3D online miễn phí

sketchfab: Website thiết kế, vẽ 3D online miễn phí

Ưu điểm:

  • Chia sẻ và nhúng các mô hình 3D trực tuyến ở bất kỳ đâu.
  • Hoạt động với tất cả các hệ điều hành, trình duyệt và thiết bị.
  • Kết nối hàng triệu thành viên với kho tàng thiết kế đồ sộ.
  • Bạn có thể lên ý tưởng và thiết kế rồi bán chúng.
  • Cung cấp nhiều sản phẩm 3D độc đáo được nhiều người dùng chia sẻ với nhiều chủ đề khác nhau.

Nhược điểm:

Bạn phải đăng ký tài khoản đăng nhập mới sử dụng được.

Link truy cập trang web https://sketchfab.com/

9. clara.io: Phần mềm vẽ 3D trực tuyến

Clara.io là một công cụ phần mềm tạo mô hình, hoạt ảnh và kết xuất 3D dựa trên đám mây đầy đủ tính năng chạy trong trình duyệt web của bạn. Với Clara.io, bạn có thể tạo các mô hình 3D phức tạp, tạo kết xuất ảnh chân thực đẹp mắt và chia sẻ chúng mà không cần cài đặt bất kỳ chương trình phần mềm nào. 

clara.io: Phần mềm vẽ 3D trực tuyến

clara.io: Phần mềm vẽ 3D trực tuyến

Ưu điểm:

  • Dễ dàng sử dụng để vẽ và tạo ra mô hình 3D.
  • Hỗ trợ các định dạng như OBJ và 3DS.
  • Sử dụng trực tuyến và sao lưu tự động khi truy cập internet bất cứ đâu.
  • Kho thư hiện mô hình 3D đồ sộ và hoàn toàn miễn phí.

Nhược điểm:

Trang web không hỗ trợ ngôn ngữ Tiếng Việt, nên hạn chế với người dùng không biết ngôn ngữ khác.

Thứ Hai, 5 tháng 12, 2022

Hướng dẫn blender




free textures dowload  : polyhaven.com


free textures dowload 4 kieu normal ,roughness, diffuse

3dzip.org

--------------------------------------------

có hướng dẫn tải free model 3d  by plugin của blender 

free dowload 3D model by plugin of blender, fast way selection this is selection from website
dowload blenderKit from blenderkit.com
dowload other plugin from github.com



 nhập môn blender bài 2


shipt+c Rết con trỏ về 0,0,0 .

để quay vật thể ví dụ theo trục Z 90 độ gõ R, Z , 90 

shift +R lặp lại lệnh vừa xong ( R :repeat)

 dowload free 3d models