diff --git a/raylib/raylib_purego.go b/raylib/raylib_purego.go index e9d0b1b..e53a9be 100644 --- a/raylib/raylib_purego.go +++ b/raylib/raylib_purego.go @@ -419,6 +419,8 @@ var drawModel func(model uintptr, position uintptr, scale float32, tint uintptr) var drawModelEx func(model uintptr, position uintptr, rotationAxis uintptr, rotationAngle float32, scale uintptr, tint uintptr) var drawModelWires func(model uintptr, position uintptr, scale float32, tint uintptr) var drawModelWiresEx func(model uintptr, position uintptr, rotationAxis uintptr, rotationAngle float32, scale uintptr, tint uintptr) +var drawModelPoints func(model uintptr, position uintptr, scale float32, tint uintptr) +var drawModelPointsEx func(model uintptr, position uintptr, rotationAxis uintptr, rotationAngle float32, scale uintptr, tint uintptr) var drawBoundingBox func(box uintptr, col uintptr) var drawBillboard func(camera uintptr, texture uintptr, position uintptr, scale float32, tint uintptr) var drawBillboardRec func(camera uintptr, texture uintptr, source uintptr, position uintptr, size uintptr, tint uintptr) @@ -932,6 +934,8 @@ func init() { purego.RegisterLibFunc(&drawModelEx, raylibDll, "DrawModelEx") purego.RegisterLibFunc(&drawModelWires, raylibDll, "DrawModelWires") purego.RegisterLibFunc(&drawModelWiresEx, raylibDll, "DrawModelWiresEx") + purego.RegisterLibFunc(&drawModelPoints, raylibDll, "DrawModelPoints") + purego.RegisterLibFunc(&drawModelPointsEx, raylibDll, "DrawModelPointsEx") purego.RegisterLibFunc(&drawBoundingBox, raylibDll, "DrawBoundingBox") purego.RegisterLibFunc(&drawBillboard, raylibDll, "DrawBillboard") purego.RegisterLibFunc(&drawBillboardRec, raylibDll, "DrawBillboardRec") @@ -3286,6 +3290,16 @@ func DrawModelWiresEx(model Model, position Vector3, rotationAxis Vector3, rotat drawModelWiresEx(uintptr(unsafe.Pointer(&model)), uintptr(unsafe.Pointer(&position)), uintptr(unsafe.Pointer(&rotationAxis)), rotationAngle, uintptr(unsafe.Pointer(&scale)), *(*uintptr)(unsafe.Pointer(&tint))) } +// DrawModelPoints - Draw a model as points +func DrawModelPoints(model Model, position Vector3, scale float32, tint color.RGBA) { + drawModelPoints(uintptr(unsafe.Pointer(&model)), uintptr(unsafe.Pointer(&position)), scale, *(*uintptr)(unsafe.Pointer(&tint))) +} + +// DrawModelPointsEx - Draw a model as points with extended parameters +func DrawModelPointsEx(model Model, position Vector3, rotationAxis Vector3, rotationAngle float32, scale Vector3, tint color.RGBA) { + drawModelPointsEx(uintptr(unsafe.Pointer(&model)), uintptr(unsafe.Pointer(&position)), uintptr(unsafe.Pointer(&rotationAxis)), rotationAngle, uintptr(unsafe.Pointer(&scale)), *(*uintptr)(unsafe.Pointer(&tint))) +} + // DrawBoundingBox - Draw bounding box (wires) func DrawBoundingBox(box BoundingBox, col color.RGBA) { drawBoundingBox(uintptr(unsafe.Pointer(&box)), *(*uintptr)(unsafe.Pointer(&col))) diff --git a/raylib/rmodels.go b/raylib/rmodels.go index f8b2ad6..e94eba5 100644 --- a/raylib/rmodels.go +++ b/raylib/rmodels.go @@ -331,6 +331,26 @@ func DrawModelWiresEx(model Model, position Vector3, rotationAxis Vector3, rotat C.DrawModelWiresEx(*cmodel, *cposition, *crotationAxis, crotationAngle, *cscale, *ctint) } +// DrawModelPoints - Draw a model as points +func DrawModelPoints(model Model, position Vector3, scale float32, tint color.RGBA) { + cmodel := model.cptr() + cposition := position.cptr() + cscale := (C.float)(scale) + ctint := colorCptr(tint) + C.DrawModelPoints(*cmodel, *cposition, cscale, *ctint) +} + +// DrawModelPointsEx - Draw a model as points with extended parameters +func DrawModelPointsEx(model Model, position Vector3, rotationAxis Vector3, rotationAngle float32, scale Vector3, tint color.RGBA) { + cmodel := model.cptr() + cposition := position.cptr() + crotationAxis := rotationAxis.cptr() + crotationAngle := (C.float)(rotationAngle) + cscale := scale.cptr() + ctint := colorCptr(tint) + C.DrawModelPointsEx(*cmodel, *cposition, *crotationAxis, crotationAngle, *cscale, *ctint) +} + // DrawBoundingBox - Draw bounding box (wires) func DrawBoundingBox(box BoundingBox, col color.RGBA) { cbox := box.cptr()