图例设计软件:Focusky,VisualComponents,图片字风格化等试用和推荐,最终还是回到Unity 游戏代码

Focusky课件工具

完整的Focusky 界面没有截图,但是从下面资料可知,确实是一个偏向PPT 动画的一个工具

1.分页面,2.并且页面跳转动画是主要功能,3.有很多小组件(各种ICON,走马灯等)、4.会员收费,动不动就弹窗.VIP

这就是 Focusky

**功能多,分类全,非常专业的工具;**但操作有些反直觉,grouping要常用,多选了只要拖一个(不明显)即是拖全部;鼠标左键移动,右键框选;又缺少像photoShop 那样的工具条

确实明显工具条等缺点,但设计器Editor的状态分明,只能说明:这工具某些功能点非常好用

评价为:优点大于缺点很多很多,但擅长点和缺点都很明显的工具

Focusky 完全没有工具条

(但是工具的切换是清晰的,前提是你要知道,反人类的鼠标操作方式)

除非Focusky 是苹果的mac 软件创始,否则不会鼠标左右互博

工厂-Visual Components

<太贵买不起>

用Unity做一个流程

<免费>

1.Assets/ 目录下创建一个 Assets/Demos 目录

2.导入Cart模型一个,

需要 git clone ,直接浏览器 download 不行<用梯子也不行,图片会丢失>

https://github.com/Jellevermandere/ArduinoMotionControls#

3.写一段"脚本"代码

cs 复制代码
using UnityEngine;

public class BasketballShooter : MonoBehaviour
{
    [Header("投射设置")]
    [Tooltip("篮球预制体(需包含Collider和Rigidbody)")]
    public GameObject basketballPrefab;
    
    [Header("这个填上-摄像机点吧")]
    [Tooltip("投射点(篮球生成的位置)")]
    public Transform shootPoint;
    
    [Tooltip("投射力度")]
    public float shootForce = 15f;
    
    [Tooltip("投射角度(影响抛物线)")]
    [Range(10f, 80f)]
    public float shootAngle = 45f;
    
    [Tooltip("发射冷却时间(防止连点)")]
    public float shootCooldown = 0.5f;

    // 内部变量
    private float _lastShootTime;
    private Camera _mainCamera;

    void Start()
    {
        // 获取主摄像机
        _mainCamera = Camera.main;
        
        // 验证必要组件
        if (shootPoint == null)
        {
            Debug.LogError("请设置投射点(shootPoint)!");
        }
        
        if (basketballPrefab == null)
        {
            Debug.LogError("请分配篮球预制体!");
        }
        else
        {
            // 检查预制体是否有必要组件
            Rigidbody rb = basketballPrefab.GetComponent<Rigidbody>();
            Collider col = basketballPrefab.GetComponent<Collider>();
            
            if (rb == null)
            {
                Debug.LogError("篮球预制体缺少Rigidbody组件!");
            }
            
            if (col == null)
            {
                Debug.LogError("篮球预制体缺少Collider组件!");
            }
        }
    }

    void Update()
    {
        // 检测鼠标左键点击,并且不在冷却中
        if (Input.GetMouseButtonDown(0) && Time.time > _lastShootTime + shootCooldown)
        {
            ShootBasketball();
        }
    }

    /// <summary>
    /// 投射篮球的核心方法
    /// </summary>
    void ShootBasketball()
    {
        // 安全检查
        if (basketballPrefab == null || shootPoint == null) return;
        
        // 记录最后发射时间
        _lastShootTime = Time.time;

        // 1. 获取鼠标点击的世界位置(在地面高度)
        Ray ray = _mainCamera.ScreenPointToRay(Input.mousePosition);
        Plane groundPlane = new Plane(Vector3.up, Vector3.zero); // 地面平面(y=0)
        
        if (groundPlane.Raycast(ray, out float distance))
        {
            // 2. 计算目标点和投射方向
            Vector3 targetPoint = ray.GetPoint(distance);
            Vector3 direction = targetPoint - shootPoint.position;
            direction.y = 0; // 忽略高度差,只保留水平方向

            // 3. 实例化篮球
            GameObject basketball = Instantiate(basketballPrefab, shootPoint.position, Quaternion.identity);
            Rigidbody rb = basketball.GetComponent<Rigidbody>();
            
            if (rb != null)
            {
                // 4. 计算投射的初始速度(带角度的抛物线)
                Vector3 shootDirection = direction.normalized;
                shootDirection.y = Mathf.Tan(shootAngle * Mathf.Deg2Rad); // 计算角度对应的y轴分量
                
                // 5. 应用力投射篮球
                rb.AddForce(shootDirection * shootForce, ForceMode.Impulse);
                
                // 可选:添加一点旋转效果
                rb.AddTorque(new Vector3(1, 0, 0) * 50f);
            }
            
            // 可选:3秒后自动销毁篮球(避免场景中堆积)
            Destroy(basketball, 5f);
        }
    }

    // Gizmos辅助绘制(方便调试)
    void OnDrawGizmos()
    {
        if (shootPoint != null)
        {
            // 绘制投射点(红色球体)
            Gizmos.color = Color.red;
            Gizmos.DrawSphere(shootPoint.position, 0.1f);
            
            // 绘制投射方向(仅在场景视图可见)
            if (Input.GetMouseButtonDown(0))
            {
                Ray ray = _mainCamera.ScreenPointToRay(Input.mousePosition);
                Plane groundPlane = new Plane(Vector3.up, Vector3.zero);
                
                if (groundPlane.Raycast(ray, out float distance))
                {
                    Gizmos.color = Color.green;
                    Gizmos.DrawLine(shootPoint.position, ray.GetPoint(distance));
                }
            }
        }
    }
}

4.在场景中添加一个GameObject,并挂上面脚本:BasketballShooter

5.假如没意外,一切正常,没有代码错误,会有下面截图

6.运行游戏,: 点击屏幕,是有几个"卷纸" ,(有BUG 先不管)

不怎么有用的工具列表

|-----------|------------------------|-------------------------------------------------------------------------------------------------------------------|
| 评分------- | 名字 | 试用说明 |
| 人上人 | 改图鸭 | https://www.gaituya.com/bianji/ |
| 夯 | 即梦 | 字节登录,目前每日送88积分;文生图,文生视频是强项 |
| | Refont AI | |
| 拉完了 | 文心一格 | 合并后依然给试用机会,依然非常"智障",不想评论,至少知道AI的下限能有多低 |
| NPC | GPT-4o | |
| 人上人 | LiblibAI | 深度生成;据说登录送80电量,但是生成一次要61电量,高精度生成,速度还不错, |
| NPC | Microsoft Designer | |

中文字体"气泡英雄"像素风格卡通字,笔触方正,
行笔圆润,具有草木系性质,适用于游戏素材

(给了一个参考图,是有中文的,应该是识别不了。。。。)

模型2.0 Pro

(能支持参考图的最高版本)

根据上面的实践"证据",你就很难摆脱:不是"国产",用的是国外数据库和研发成果的质疑

起码可以肯定的是:

-在2.0Pro版本,能够对比参考图生成的模型下

-的你用了大量的国外训练库

AI内容参考自

保姆级教程丨AI制作双十一 透明底字体素材!

https://www.bilibili.com/video/BV1zpsbz4EMn/?spm_id_from=333.337.search-card.all.click&vd_source=87cc78b95e8f0a7ebd13a1d527fea09b

相关推荐
GEO_Huang2 小时前
想要排名稳?数谷 GEO 优化助力企业品牌升级
大数据·人工智能·百度·aigc·rpa·geo
张老师带你学2 小时前
unity道具,健身房资源
科技·游戏·unity·游戏引擎·模型
说实话起个名字真难啊2 小时前
windows 安装openclaw的优势
人工智能·ai·openclaw
kaixin_啊啊2 小时前
OpenClaw 是什么?一篇讲透这只爆火“龙虾”到底能帮你做什么
ai·openclaw·龙虾·openclaw 为什么火了·openclaw 是什么
K姐研究社3 小时前
阿里QoderWork实测 – 打工人桌面AI助手,零配置替代OpenClaw
人工智能·aigc
LSssT.3 小时前
OpenCode全解:从安装到使用
ai·opencode
HinsCoder3 小时前
【OpenClaw】——绿联NAS部署OpenClaw
ai·大模型·agent·nas·openclaw·龙虾·绿联nas
研究点啥好呢3 小时前
每日GitHub热门项目推荐 | 2026年3月9日(补充)
ai·开源·github·openclaw
JohnCHsu3 小时前
耗时2小时58分,理想的AI编程助手Claude Code 部署与本地自托管模型配置
ai·agent·claude