目录

一.目的

1.想知道:愤怒的小鸟:如何制作

2.做好学习笔记,方便下次查看

二.参考

1.SIKI学院

三.注意

1.版本

操作:1:07猪的受伤

1.游戏逻辑

1.图片裁剪:制作背景等

1.创建空物体,取名字为env​

1.拖拽地面图片在env下面+并且添加碰撞器+调整碰撞器的位置+复制地面

1.设置鸟的角阻力:让其 不会一直滚动

1.运行结果:成功

1.添加小猪,改名字为pig

1.运行结果:

1.小猪添加代码:

1.小猪设置

1.运行结果

操作:2: 08弹弓画线操作

1.制作左边弹弓的位置:

1.左右弹弓添加划线组件

1.代码:弹弓划线

1.小鸟设置+划线宽度设置

1.运行结果:成功

操作:3:09死亡、加分特效的制作

1.游戏逻辑

1.新建爆炸的特效:

1.给特效添加代码:Boom

1.BOOM特效最后一帧添加事件

1.Boom作为预制件

1.小猪代码:进行销毁的处理

1.运行效果:成功

1.加分特效图片制作:

1.代码:pig添加加分特效产生、销毁 ​

1.运行效果:成功

操作:4:10游戏逻辑的判定,实现多只小鸟的飞出

1.游戏逻辑

1.新建空物体:

1.代码: GameManager

1.鸟的代码:

1.猪的代码:

1.Unity设置

1.运行效果:完成


一.目的

1.想知道:愤怒的小鸟:如何制作

2.做好学习笔记,方便下次查看

二.参考

1.SIKI学院

登录 - SiKi学院 - 生命不息,学习不止!

good:学习的网址

三.注意

1.版本

  1. Unity2017.2.0f3
  2. VS2019
  3. UnityHUB 2.5.6

操作:1:07猪的受伤

1.游戏逻辑

1.图片裁剪:制作背景等

发现无法自动裁剪为2个图片,进行手动裁剪

1.创建空物体,取名字为env

1.拖拽地面图片在env下面+并且添加碰撞器+调整碰撞器的位置+复制地面

1.设置鸟的角阻力:让其 不会一直滚动

1.运行结果:成功

1.添加小猪,改名字为pig

1.运行结果:

1.小猪添加代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;/// <summary>
/// 【Author:xzy;Time:2021-12-29】
/// Function:小猪身上的代码
/// </summary>
public class Pig : MonoBehaviour
{/// <summary>bfloatool:最小速度:猪会受伤</summary>public float fMinSpeed =5;/// <summary>bfloatool:最大速度:猪会死亡</summary>public float fMaxSpeed = 10;/// <summary>SpriteRenderer:小猪SpriteRenderer组件</summary>private SpriteRenderer render;/// <summary>Sprite:小猪受伤图片</summary>public Sprite hurt;private void Awake(){render = this.GetComponent<SpriteRenderer>();}/// <summary>///【Author:xzy;Time:2021-12-29】/// Function: 小猪碰撞检测/// </summary>/// <param name="collision"></param>private void OnCollisionEnter2D(Collision2D collision){print(collision.relativeVelocity.magnitude);//碰撞体的相对速度的速度长度大于最大速度:小猪直接死亡if (collision.relativeVelocity.magnitude>fMaxSpeed){Destroy(this.gameObject);}else if(collision.relativeVelocity.magnitude>fMinSpeed&&collision.relativeVelocity.magnitude<=fMaxSpeed){//碰撞体的相对速度的速度长度大于最小速度&&小于最大速度:小猪受伤:更换图片render.sprite = hurt;}}}

1.小猪设置

1.运行结果

操作:2: 08弹弓画线操作

1.制作左边弹弓的位置:

创建空物体+挪动到此位置 +改名字为leftPos

1.左右弹弓添加划线组件

1.代码:弹弓划线

  1. 重点:划线,开始、终止地址
using System.Collections;
using System.Collections.Generic;
using UnityEngine;/// <summary>
/// 【Author:xzy;Time:2021-12-28】
/// Function:小鸟身上的代码
/// </summary>
public class Bird : MonoBehaviour
{/// <summary>bool:是否点击</summary>private bool bIsClick = false;/// <summary>float:计算鸟和弹弓的距离的最大值</summary>public float fMaxdis = 3;/// <summary>SpringJoint2D:鸟身上弹簧的组件</summary>private SpringJoint2D sp;/// <summary>Rigidbody2D:鸟身上的物理组件</summary>private Rigidbody2D rg;/// <summary>Transform:弹弓右边的位置,目的:方便计算鸟和弹弓的距离</summary>public Transform rightPos;/// <summary>Transform:弹弓左边的位置,目的:方便划线【课程08弹弓画线操作:添加】</summary>public Transform leftPos;/// <summary>LineRenderer:弹弓右边的划线组件【课程08弹弓画线操作:添加】</summary>public LineRenderer right;/// <summary>LineRenderer:弹弓左边的划线组件【课程08弹弓画线操作:添加】</summary>public LineRenderer left;private void Awake(){sp = this.GetComponent<SpringJoint2D>();//获取小鸟的弹簧组件rg = this.GetComponent<Rigidbody2D>();//获取小鸟身上的物理组件}/// <summary>///【Author:xzy;Time:2021-12-28】/// Function: 鼠标按下/// </summary>private void OnMouseDown(){bIsClick = true;rg.isKinematic = true;//按下小鸟,让其物理组件的动力学开启,从dynamic到kinematic}/// <summary>///【Author:xzy;Time:2021-12-28】/// Function: 鼠标抬起/// </summary>private void OnMouseUp(){bIsClick = false;rg.isKinematic = false;//松开小鸟,让其物理组件的动力学关闭Invoke("Fly", 0.1f);//定时器:唤醒 小鸟飞出的逻辑}private void Update(){if (bIsClick){//鼠标按下,进行位置的跟随,屏幕坐标转换为世界坐标transform.position = Camera.main.ScreenToWorldPoint(Input.mousePosition);transform.position += new Vector3(0, 0, -Camera.main.transform.position.z);//进行位置限制if (Vector3.Distance(transform.position, rightPos.position) > fMaxdis){Vector3 pos = (transform.position - rightPos.position).normalized;  //单位化向量:获取方向,鸟的向量减去右边弹弓的位置的向量pos *= fMaxdis; //最大长度的向量transform.position = pos + rightPos.position;}Line();}}/// <summary>///【Author:xzy;Time:2021-12-29】/// Function: 处理松开小鸟飞出的逻辑/// </summary>void Fly(){sp.enabled = false;//松开小鸟,取消掉弹簧组件,小鸟就会飞出}/// <summary>///【Author:xzy;Time:2021-12-29】【课程08弹弓画线操作:添加】/// Function: 画线/// </summary>void Line(){right.SetPosition(0, rightPos.position);//画线:右边的起始位置:右边弹弓位置right.SetPosition(1, this.transform.position);//画线:右边的终点位置:小鸟位置left.SetPosition(0, leftPos.position);left.SetPosition(1, this.transform.position);}}

1.小鸟设置+划线宽度设置

1.运行结果:成功

操作:3:09死亡、加分特效的制作

1.游戏逻辑

1.新建爆炸的特效:

打开图片发现有些特效分的很细,我们将其删除delete,然后框选适合的,然后点击apply

将需要的图片按住ctrl按键,多选,然后拖拽到Hierarchy中

然后新建文件夹“Animations”,取名字为boom

制作合适的特效动画

改名字为boom+重复 取消掉

1.给特效添加代码:Boom

using System.Collections;
using System.Collections.Generic;
using UnityEngine;/// <summary>
/// 【Author:xzy;Time:2021-12-29】【09-死亡、加分特效的制作:添加】
/// Function:小猪身上的代码
/// </summary>
public class Boom : MonoBehaviour
{/// <summary>///【Author:xzy;Time:2021-12-29】/// Function: 小猪碰撞检测/// </summary>/// <param name="collision"></param>public void DestroyBoom(){Destroy(this.gameObject);}
}

1.BOOM特效最后一帧添加事件

1.Boom作为预制件

1.小猪代码:进行销毁的处理

  1. 重点:实例化出现Boom预制件
using System.Collections;
using System.Collections.Generic;
using UnityEngine;/// <summary>
/// 【Author:xzy;Time:2021-12-29】
/// Function:小猪身上的代码
/// </summary>
public class Pig : MonoBehaviour
{/// <summary>bfloatool:最小速度:猪会受伤</summary>public float fMinSpeed =5;/// <summary>bfloatool:最大速度:猪会死亡</summary>public float fMaxSpeed = 10;/// <summary>SpriteRenderer:小猪SpriteRenderer组件</summary>private SpriteRenderer render;/// <summary>Sprite:小猪受伤图片</summary>public Sprite hurt;/// <summary>GameObject:小猪死亡后爆炸特效</summary>public GameObject boom;private void Awake(){render = this.GetComponent<SpriteRenderer>();}/// <summary>///【Author:xzy;Time:2021-12-29】/// Function: 小猪碰撞检测/// </summary>/// <param name="collision"></param>private void OnCollisionEnter2D(Collision2D collision){print(collision.relativeVelocity.magnitude);//碰撞体的相对速度的速度长度大于最大速度:小猪直接死亡if (collision.relativeVelocity.magnitude>fMaxSpeed){Dead();}else if(collision.relativeVelocity.magnitude>fMinSpeed&&collision.relativeVelocity.magnitude<=fMaxSpeed){//碰撞体的相对速度的速度长度大于最小速度&&小于最大速度:小猪受伤:更换图片render.sprite = hurt;}}/// <summary>///【Author:xzy;Time:2021-12-29】【09-死亡、加分特效的制作:添加】/// Function: 小猪碰撞检测/// </summary>private void Dead(){Destroy(this.gameObject);//小猪自身销毁Instantiate(boom, this.transform.position, Quaternion.identity);//预制件产生:在小猪的位置,角度默认}}

1.运行效果:成功

1.加分特效图片制作:

先裁剪+改名字为pigScore+作为预制体

1.代码:pig添加加分特效产生、销毁

using System.Collections;
using System.Collections.Generic;
using UnityEngine;/// <summary>
/// 【Author:xzy;Time:2021-12-29】
/// Function:小猪身上的代码
/// </summary>
public class Pig : MonoBehaviour
{/// <summary>bfloatool:最小速度:猪会受伤</summary>public float fMinSpeed =5;/// <summary>bfloatool:最大速度:猪会死亡</summary>public float fMaxSpeed = 10;/// <summary>SpriteRenderer:小猪SpriteRenderer组件</summary>private SpriteRenderer render;/// <summary>Sprite:小猪受伤图片</summary>public Sprite hurt;/// <summary>GameObject:小猪死亡后爆炸特效</summary>public GameObject boom;/// <summary>GameObject:小猪死亡后加分特效</summary>public GameObject score;private void Awake(){render = this.GetComponent<SpriteRenderer>();}/// <summary>///【Author:xzy;Time:2021-12-29】/// Function: 小猪碰撞检测/// </summary>/// <param name="collision"></param>private void OnCollisionEnter2D(Collision2D collision){print(collision.relativeVelocity.magnitude);//碰撞体的相对速度的速度长度大于最大速度:小猪直接死亡if (collision.relativeVelocity.magnitude>fMaxSpeed){Dead();}else if(collision.relativeVelocity.magnitude>fMinSpeed&&collision.relativeVelocity.magnitude<=fMaxSpeed){//碰撞体的相对速度的速度长度大于最小速度&&小于最大速度:小猪受伤:更换图片render.sprite = hurt;}}/// <summary>///【Author:xzy;Time:2021-12-29】【09-死亡、加分特效的制作:添加】/// Function: 小猪碰撞检测/// </summary>private void Dead(){Destroy(this.gameObject);//小猪自身销毁Instantiate(boom, this.transform.position, Quaternion.identity);//boom特效:预制件产生:在小猪的位置,角度默认GameObject go= Instantiate(score, this.transform.position+new Vector3(0,0.5f,0), Quaternion.identity);//加分特效:预制件产生:在小猪的位置,角度默认Destroy(go, 1.5f);//定时销毁:加分特效}}

1.运行效果:成功

操作:4:10游戏逻辑的判定,实现多只小鸟的飞出

1.游戏逻辑

1.新建空物体:

  1. GameManager居然图标是个齿轮

位置重置+改名字为GameManager+添加新增代码GameManager

1.代码: GameManager

  1. 重点:单例
  2. 初始化中:除了第一个小鸟其余的都将物体、弹簧禁用。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;/// <summary>
/// 【Author:xzy;Time:2021-12-29】【10游戏逻辑的判定,实现多只小鸟的飞出:添加】
/// Function:小猪身上的代码
/// </summary>
public class GameManager : MonoBehaviour
{/// <summary>List:所有的小鸟【10游戏逻辑的判定,实现多只小鸟的飞出:添加】</summary>public List<Bird> birds;/// <summary>List:所有的猪【10游戏逻辑的判定,实现多只小鸟的飞出:添加】</summary>public List<Pig> pigs;/// <summary>单例【10游戏逻辑的判定,实现多只小鸟的飞出:添加】</summary>public static GameManager _instance;private void Awake(){_instance = this;//单例}void Start(){Initialized();//【10游戏逻辑的判定,实现多只小鸟的飞出:添加】}/// <summary>///【Author:xzy;Time:2021-12-29】【10游戏逻辑的判定,实现多只小鸟的飞出:添加】/// Function: 小猪碰撞检测/// </summary>private void Initialized(){for (int i = 0; i < birds.Count; i++){//初始化时候,让第一个小鸟能够被弹,其余的都不能if (i == 0){birds[i].enabled = true;birds[i].sp.enabled = true;}else{birds[i].enabled = false;birds[i].sp.enabled = false;}}}/// <summary>///【Author:xzy;Time:2021-12-29】【10游戏逻辑的判定,实现多只小鸟的飞出:添加】/// Function: 下一只小鸟/// </summary>public void NextBird(){if (pigs.Count > 0){if (birds.Count > 0){//下一只飞吧Initialized();}else{//输了}}else{//赢了}}}

1.鸟的代码:

  1. 重点:列表移除可以这样操作!
using System.Collections;
using System.Collections.Generic;
using UnityEngine;/// <summary>
/// 【Author:xzy;Time:2021-12-28】
/// Function:小鸟身上的代码
/// </summary>
public class Bird : MonoBehaviour
{/// <summary>bool:是否点击</summary>private bool bIsClick = false;/// <summary>float:计算鸟和弹弓的距离的最大值</summary>public float fMaxdis = 3;/// <summary>SpringJoint2D:鸟身上弹簧的组件</summary>[HideInInspector]public SpringJoint2D sp;/// <summary>Rigidbody2D:鸟身上的物理组件</summary>[HideInInspector]private Rigidbody2D rg;/// <summary>Transform:弹弓右边的位置,目的:方便计算鸟和弹弓的距离</summary>public Transform rightPos;/// <summary>Transform:弹弓左边的位置,目的:方便划线【课程08弹弓画线操作:添加】</summary>public Transform leftPos;/// <summary>LineRenderer:弹弓右边的划线组件【课程08弹弓画线操作:添加】</summary>public LineRenderer right;/// <summary>LineRenderer:弹弓左边的划线组件【课程08弹弓画线操作:添加】</summary>public LineRenderer left;/// <summary>GameObject:特效【10游戏逻辑的判定,实现多只小鸟的飞出:添加】</summary>public GameObject boom;private void Awake(){sp = this.GetComponent<SpringJoint2D>();//获取小鸟的弹簧组件rg = this.GetComponent<Rigidbody2D>();//获取小鸟身上的物理组件}/// <summary>///【Author:xzy;Time:2021-12-28】/// Function: 鼠标按下/// </summary>private void OnMouseDown(){bIsClick = true;rg.isKinematic = true;//按下小鸟,让其物理组件的动力学开启,从dynamic到kinematic}/// <summary>///【Author:xzy;Time:2021-12-28】/// Function: 鼠标抬起/// </summary>private void OnMouseUp(){bIsClick = false;rg.isKinematic = false;//松开小鸟,让其物理组件的动力学关闭Invoke("Fly", 0.1f);//定时器:唤醒 小鸟飞出的逻辑}private void Update(){if (bIsClick){//鼠标按下,进行位置的跟随,屏幕坐标转换为世界坐标transform.position = Camera.main.ScreenToWorldPoint(Input.mousePosition);transform.position += new Vector3(0, 0, -Camera.main.transform.position.z);//进行位置限制if (Vector3.Distance(transform.position, rightPos.position) > fMaxdis){Vector3 pos = (transform.position - rightPos.position).normalized;  //单位化向量:获取方向,鸟的向量减去右边弹弓的位置的向量pos *= fMaxdis; //最大长度的向量transform.position = pos + rightPos.position;}Line();}}/// <summary>///【Author:xzy;Time:2021-12-29】/// Function: 处理松开小鸟飞出的逻辑/// </summary>void Fly(){sp.enabled = false;//松开小鸟,取消掉弹簧组件,小鸟就会飞出Invoke("Next", 5);//定时器:一段时候后调用Next方法}/// <summary>///【Author:xzy;Time:2021-12-29】【课程08弹弓画线操作:添加】/// Function: 画线/// </summary>void Line(){right.SetPosition(0, rightPos.position);//画线:右边的起始位置:右边弹弓位置right.SetPosition(1, this.transform.position);//画线:右边的终点位置:小鸟位置left.SetPosition(0, leftPos.position);left.SetPosition(1, this.transform.position);}/// <summary>///【Author:xzy;Time:2021-12-29】【10游戏逻辑的判定,实现多只小鸟的飞出:添加】/// Function: 下一只小鸟被弹/// </summary>private void Next(){GameManager._instance.birds.Remove(this);//移除列表中此时小鸟元素Destroy(this.gameObject);//摧毁这个小鸟Instantiate(boom, this.transform.position, Quaternion.identity);//产生特效GameManager._instance.NextBird();//下一只小鸟出现}
}

1.猪的代码:

  1. 重点:为了Pig代码让猪和木棍都能使用,开通一个bool
using System.Collections;
using System.Collections.Generic;
using UnityEngine;/// <summary>
/// 【Author:xzy;Time:2021-12-29】
/// Function:小猪身上的代码
/// </summary>
public class Pig : MonoBehaviour
{/// <summary>bfloatool:最小速度:猪会受伤</summary>public float fMinSpeed =5;/// <summary>bfloatool:最大速度:猪会死亡</summary>public float fMaxSpeed = 10;/// <summary>SpriteRenderer:小猪SpriteRenderer组件</summary>private SpriteRenderer render;/// <summary>Sprite:小猪受伤图片</summary>public Sprite hurt;/// <summary>GameObject:小猪死亡后爆炸特效</summary>public GameObject boom;/// <summary>GameObject:小猪死亡后加分特效</summary>public GameObject score;/// <summary>bool:是否是猪,目的此代码和木块代码混用【10游戏逻辑的判定,实现多只小鸟的飞出:添加】</summary>public bool bIsPig = false;private void Awake(){render = this.GetComponent<SpriteRenderer>();}/// <summary>///【Author:xzy;Time:2021-12-29】/// Function: 小猪碰撞检测/// </summary>/// <param name="collision"></param>private void OnCollisionEnter2D(Collision2D collision){print(collision.relativeVelocity.magnitude);//碰撞体的相对速度的速度长度大于最大速度:小猪直接死亡if (collision.relativeVelocity.magnitude>fMaxSpeed){Dead();}else if(collision.relativeVelocity.magnitude>fMinSpeed&&collision.relativeVelocity.magnitude<=fMaxSpeed){//碰撞体的相对速度的速度长度大于最小速度&&小于最大速度:小猪受伤:更换图片render.sprite = hurt;}}/// <summary>///【Author:xzy;Time:2021-12-29】【09-死亡、加分特效的制作:添加】/// Function: 小猪碰撞检测/// </summary>private void Dead(){if (bIsPig){GameManager._instance.pigs.Remove(this);//猪列表移除此猪元素【10游戏逻辑的判定,实现多只小鸟的飞出:添加】}Destroy(this.gameObject);//小猪自身销毁Instantiate(boom, this.transform.position, Quaternion.identity);//boom特效:预制件产生:在小猪的位置,角度默认GameObject go= Instantiate(score, this.transform.position+new Vector3(0,0.5f,0), Quaternion.identity);//加分特效:预制件产生:在小猪的位置,角度默认Destroy(go, 1.5f);//定时销毁:加分特效}}

1.Unity设置

1.运行效果:完成

Unity初级案例-愤怒的小鸟:三:07猪的受伤+08弹弓划线操作+09死亡和加分特效的制作+10游戏逻辑的判定,实现多只小鸟的飞出相关推荐

  1. Unity初级案例-愤怒的小鸟:四:11解决重复划线和小鸟轮换速度突然变大的问题+12添加小鸟飞出的拖尾效果+13整合场景和解决无法显示划线弹弓的问题

    目录 一.目的 1.想知道:愤怒的小鸟:如何制作 2.做好学习笔记,方便下次查看 二.参考 1.SIKI学院 三.注意 1.版本 操作:1:11解决重复划线和小鸟轮换速度突然变大的问题 1.GameM ...

  2. Unity初级案例-愤怒的小鸟:六:17把粒子系统显示在UI之前+18让星星一颗一颗的显示+19添加暂停动画

    目录 一.目的 1.想知道:愤怒的小鸟:如何制作 2.做好学习笔记,方便下次查看 二.参考 1.SIKI学院 三.注意 1.版本 操作:1:17把粒子系统显示在UI之前 1.知识介绍 1.设置 把粒子 ...

  3. siki学院unity初级案例炸弹人取空位置点的Bug

    问题描述:   在学习Unity初级案例炸弹人时,当取地图上的空位置点时,出现InitMap(2,2)取值不正确的情况.   程序获取的空位置点数   空位置图如下:   从图中可以看出空位置点数应为 ...

  4. c语言炸弹人小游戏,Unity初级案例 - 炸弹人

    {getUnitName} {getLessonName} 敬请期待 免费 {getTaskName} 剩余观看时长:{watchLimitRemaining} 回放 {activityStartTi ...

  5. Unity案例---愤怒的小鸟

    [SiKi学院Unity]Unity初级案例 - 愤怒的小鸟_哔哩哔哩_bilibili 笔记要点 edit--->project settings--->editor 导入资源 单击右键 ...

  6. unity《愤怒的小鸟》初级案例笔记

    游戏逻辑: 1.小鸟的拖拽(最大移动距离) 2.小鸟的飞出 3.小鸟与猪,木头碰撞(死亡,受伤) 4.皮筋的绘制 5.一只小鸟到多只的转换 6.镜头跟随 7.制作特效 8.游戏结束,胜利的判定 9.音 ...

  7. siki学院_Unity初级案例_愤怒的小鸟_学习笔记1/3

    说明:本次学习开始于2018年9月23日,至9月26日已看完全部教学视频,并已基本完成该案例的制作,历时四天.本文档为我在学习过程中,通过记事本记录的学习过程,对于该游戏案例的制作过程并不十分详尽,不 ...

  8. siki学院_Unity初级案例_愤怒的小鸟_学习笔记2/3

    说明:本次学习开始于2018年9月23日,至9月26日已看完全部教学视频,并已基本完成该案例的制作,历时四天.本文档为我在学习过程中,通过记事本记录的学习过程,对于该游戏案例的制作过程并不十分详尽,不 ...

  9. Unity 2D案例学习——制作Roguelike随机地下城

    01简介 该学习案例来自b站up主M_Studio的系列视频制作Roguelike随机地下城,此篇博客为案例学习笔记 Notice 1.该项目不包含包括敌人在内的一些游戏元素,仅为具有基础功能的dem ...

最新文章

  1. JSON http://www.cnblogs.com/haippy/archive/2012/05/20/2509329.html
  2. postfix+mysql 发件服务
  3. Call指令和Ret指令讲解
  4. 阿里云全球布局逾200个数据中心,成立海外孵化中心深耕本地市场
  5. 1.22 实例:商品信息查询
  6. 有三AI知识星球官宣,BAT等大咖等你来撩
  7. 到底逾期几次才会影响贷款申请?
  8. k8s 命令 重启_k8s 常用命令
  9. bat脚本中获取上级目录_使用Python写一个可以监控Tomcat 运行的脚本,并且把.py文件转换成.exe文件...
  10. 关于页面图表相应式的问题,问题遇见时间,9月1日,到今天9月2日,尚未解决...
  11. 手把手教你创建容器服务Kubernetes集群
  12. windbg 常用命令~*
  13. 压缩html页面 seo,WordPress前端html代码压缩优化方法
  14. 扩展-视图 View
  15. zabbix监控主动模式、被动模式、添加监控主机、添加自定义模板、处理图形乱码、自动发现...
  16. rs485接收中断函数使能_RS485通讯几种常见问题
  17. linux pt远程下载,Linux中使用Transmission下载BT/PT[zz]
  18. matlab数据平滑处理,matlab数据的平滑处理
  19. MOSFET管电流方向能反着流吗?体二极管能过多大电流?MOS管构造
  20. python圣诞节祝福_Pyhton表白代码——浪漫圣诞节

热门文章

  1. 深度linux触摸板失灵,deepin下触摸板无法使用
  2. BI系统开发过程中用到的知识总结
  3. MySQL数据库入门学习教程(mysql基础+高级)
  4. 公众号如何开通留言功能?
  5. manjaro安装tim
  6. 用PyOpenGL叩开3D的心扉——OpenGL全解析(1)
  7. PHP 代码规范风格
  8. GLES2.0中文API-glTexImage2D
  9. 复旦MBA:热情从未消退,让这场云端盛会点燃你的斗志
  10. pytorch_BCELoss的reduction参数理解