Top Related Projects
Flexible framework for workflow and decision automation with BPMN and DMN. Integration with Quarkus, Spring, Spring Boot, CDI.
A compact and highly efficient workflow and Business Process Management (BPM) platform for developers, system admins and business users.
Quick Overview
The JasonMa0012/JTRP repository is a project that aims to provide a comprehensive solution for managing and tracking job applications. It includes features such as job search, application tracking, and interview preparation.
Pros
- Comprehensive Functionality: The project covers a wide range of job search and application management features, making it a one-stop solution for job seekers.
- User-friendly Interface: The project has a clean and intuitive user interface, making it easy for users to navigate and use the various features.
- Customizable: The project allows users to customize various aspects of the application, such as job search filters and application templates.
- Open-source: The project is open-source, which means that users can contribute to the development and improvement of the project.
Cons
- Limited Documentation: The project's documentation could be more comprehensive, which may make it difficult for new users to get started.
- Potential Performance Issues: Depending on the size of the user's job search and application history, the project may experience performance issues, especially on older or less powerful devices.
- Lack of Mobile Support: The project is currently only available as a desktop application, which may limit its accessibility for users who prefer to manage their job search on the go.
- Potential Security Concerns: As with any application that handles sensitive personal and professional information, there may be security concerns that need to be addressed.
Code Examples
from jtrp.job_search import JobSearch
# Create a new job search object
job_search = JobSearch()
# Set the job search parameters
job_search.set_location("San Francisco, CA")
job_search.set_job_title("Software Engineer")
job_search.set_salary_range(100000, 150000)
# Perform the job search
job_listings = job_search.search()
# Print the job listings
for listing in job_listings:
print(listing.title)
print(listing.company)
print(listing.location)
print(listing.salary_range)
print()
This code demonstrates how to use the JobSearch
class to perform a job search based on various criteria, such as location, job title, and salary range.
from jtrp.application_tracker import ApplicationTracker
# Create a new application tracker object
app_tracker = ApplicationTracker()
# Add a new job application
app_tracker.add_application(
company="Acme Inc.",
position="Software Engineer",
status="Applied",
notes="Submitted resume and cover letter on 2023-04-01"
)
# Update the status of an existing application
app_tracker.update_application(
company="Acme Inc.",
position="Software Engineer",
status="Interview Scheduled",
notes="Scheduled for phone interview on 2023-04-15"
)
# View the list of all job applications
for app in app_tracker.get_all_applications():
print(app.company, app.position, app.status, app.notes)
This code demonstrates how to use the ApplicationTracker
class to manage job applications, including adding new applications and updating the status of existing ones.
from jtrp.interview_prep import InterviewPrep
# Create a new interview preparation object
interview_prep = InterviewPrep()
# Add a new interview question
interview_prep.add_question(
question="What is your greatest strength?",
category="Behavioral",
difficulty="Easy"
)
# Practice answering an interview question
response = interview_prep.practice_question("What is your greatest strength?")
print(response)
# View the list of all interview questions
for question in interview_prep.get_all_questions():
print(question.question, question.category, question.difficulty)
This code demonstrates how to use the InterviewPrep
class to manage interview preparation, including adding new interview questions and practicing answering them.
Getting Started
To get started with the JTRP project, follow these steps:
- Clone the repository from GitHub:
git clone https://github.com/JasonMa0012/JTRP.git
- Navigate to the project directory:
cd JTRP
- Install the require
Competitor Comparisons
Flexible framework for workflow and decision automation with BPMN and DMN. Integration with Quarkus, Spring, Spring Boot, CDI.
Pros of Camunda BPM Platform
- Camunda BPM Platform is a mature and feature-rich business process management (BPM) solution, with a strong focus on enterprise-level requirements.
- It provides a comprehensive set of tools and components for modeling, executing, and monitoring business processes, making it suitable for complex and mission-critical applications.
- The platform has a large and active community, with extensive documentation, tutorials, and support resources available.
Cons of Camunda BPM Platform
- Camunda BPM Platform may have a steeper learning curve compared to JTRP, especially for developers who are new to BPM concepts and technologies.
- The platform's enterprise-level features and capabilities may be overkill for smaller or less complex projects, potentially leading to increased complexity and overhead.
- Camunda BPM Platform is a commercial product, with licensing costs that may be a barrier for some organizations, especially smaller ones.
Code Comparison
JTRP (JasonMa0012/JTRP):
public class TaskRunner {
public static void main(String[] args) {
TaskRunner taskRunner = new TaskRunner();
taskRunner.run();
}
public void run() {
// Task execution logic
}
}
Camunda BPM Platform (camunda/camunda-bpm-platform):
public class MyDelegate implements JavaDelegate {
@Override
public void execute(DelegateExecution execution) throws Exception {
// Process logic
}
}
The key difference is that the Camunda BPM Platform code follows the JavaDelegate interface, which is part of the Camunda BPM engine's API. This allows the process logic to be executed as part of a larger, managed business process, rather than a standalone task runner.
A compact and highly efficient workflow and Business Process Management (BPM) platform for developers, system admins and business users.
Pros of Flowable Engine
- Robust and Feature-rich: Flowable Engine is a mature and feature-rich workflow and business process management (BPM) platform, offering a wide range of capabilities for enterprise-level applications.
- Scalability and Performance: Flowable Engine is designed to handle large-scale deployments and high-volume workloads, making it suitable for enterprise-level use cases.
- Extensive Documentation and Community: Flowable Engine has a large and active community, with extensive documentation and resources available for developers.
Cons of Flowable Engine
- Complexity: Flowable Engine can be more complex to set up and configure compared to JTRP, which may be a barrier for smaller projects or teams with limited resources.
- Steep Learning Curve: Mastering Flowable Engine may require a significant investment of time and effort, especially for developers who are new to BPM and workflow management.
- Licensing: Flowable Engine is available under a commercial license, which may be a consideration for some projects or organizations.
Code Comparison
JTRP (5 lines):
public class JTRPApplication {
public static void main(String[] args) {
SpringApplication.run(JTRPApplication.class, args);
}
}
Flowable Engine (5 lines):
public class FlowableApplication {
public static void main(String[] args) {
SpringBootApplication.run(FlowableApplication.class, args);
}
}
The code snippets above show the main entry point for both JTRP and Flowable Engine. While the structure is similar, the Flowable Engine application uses the SpringBootApplication.run()
method, which is a part of the Spring Boot framework, whereas JTRP uses the more generic SpringApplication.run()
method.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
JTRP (Jason Ma Toon Render Pipeline)
è¿æ¯æä¸ä½æ¶é´å¼åçåºäºUnity HDRP并æ¯æDX12 RayTracingçå¡é渲æå·¥å ·éï¼å®ä½äºå®æ¶ç产影è§çº§è´¨éå¡é渲æCGã
åºäºUTSäºæ¬¡å¼åï¼https://github.com/unity3d-jp/UnityChanToonShaderVer2_Project
ä¸æ ï¼https://www.zhihu.com/people/blackcat1312/posts
Bç«ï¼https://space.bilibili.com/42463206
é®ç®±ï¼1312119064@qq.com
Works
https://www.bilibili.com/video/BV1wD4y1w7oU?spm_id_from=333.999.0.0
https://www.bilibili.com/video/BV1Bq4y1r7bn?p=3
Installation
-
使ç¨Unity 2021ææ°çæ¬å建ä¸ä¸ªæ°é¡¹ç®ï¼æ使ç¨ä½ èªå·±ç项ç®ï¼
-
ç¡®ä¿å®è£ äºBlenderï¼ä»¥ååå».blendæ件å¯ä»¥ç´æ¥æå¼Blenderï¼å¦å示ä¾æ¨¡åå°æ æ³å¯¼å ¥
-
ï¼éè¦ä»£çï¼
Window > Package Manager > Add > Add package from git URL
è¾å ¥https://github.com/JasonMa0012/JTRP.git
- ä½ ä¹å¯ä»¥éæ©æå¨ä»Githubä¸è½½Zipï¼ç¶åä»
Package Manager > Add package from disk
æ·»å Local Package
- ä½ ä¹å¯ä»¥éæ©æå¨ä»Githubä¸è½½Zipï¼ç¶åä»
-
å¨Projecté¢æ¿ä¸æ¾å°
Packages > JTRP
ï¼åæ¶æå¼Edit > Project Settings > Graphics
ï¼å°JTRP\RenderPipelineResources\JTRP_RenderPipelineAsset
åé ç»SRP Settings
-
æå¼
Window > Rendering > HDRP Wizard
ï¼ä¸è¬ä¼èªå¨æå¼ï¼ï¼ç¹å»Fix All
ï¼éå¯ç¼è¾å¨ -
åå»
JTRP\Samples\JTRP_Samples.unitypackage
导åºç¤ºä¾åºæ¯ï¼æå¼Assets\JTRP_Samples\SampleScenes
ä¸çåºæ¯ï¼æ£æ¥æ¸²æç»ææ¯å¦ä¸æªå¾ä¸è´ï¼è¥æ¸²æç»æå¼å¸¸ï¼è¯·éæ°æ£æ¥å®è£ è¿ç¨ææ交Issue
Getting Startedï¼ä¸æ¸²äºå ¥é¨è§é¢æç¨
æç¨ï¼https://www.bilibili.com/video/BV1AA411A7RR/
模åé å¸ï¼https://www.bilibili.com/video/BV1a7411i7js/
è§é¢ä¸ä½ ä¼å¦å°ï¼
çæ¬æ§å¶
- 为ä½ä½¿ç¨Gitï¼å¤äººåä½ãçæ¬æ§å¶
- Githubè´¦æ·ãä»åºãLFSãåå¨ååæ件大å°éå¶
- SourceTreeæç¨ï¼
- Cloneãä¿®æ¹ãæåãæ¨éãåæ»ã忽ç¥
- æç´æ¥ä¸è½½Zipï¼https://github.com/Jason-Ma-233/JasonMaToonRenderPipeline
åç½®ç¥è¯
- 3D ç¾æ¯ãDCC åºç¡
- Unity å®è£ ãè¯è¨å ãåºæ¬ç¥è¯
- Unity MMDï¼https://www.bilibili.com/video/BV1Db411e74e
- Blenderï¼
- PMXå¯¼å ¥æ件ï¼https://github.com/GiveMeAllYourCats/cats-blender-plugin
- 模åå¤çï¼æåæè´¨ãè¸åç¬æè´¨ãè¸é¨çé¢åæ³çº¿ï¼å¯éï¼
JTRP
- ä¸æ¸²äºæ¦è¿°ï¼ä»ä¹æ¯PBR / NPR / å¡é渲æ / ä¸æ¸²äºãä¸æ¸²äºç常è§ç¹å¾ä¸å ¸åæ¡ä¾
- UTSï¼https://github.com/unity3d-jp/UnityChanToonShaderVer2_Project/blob/release/urp/2.2.3/Documentation~/index.md
- åæ°æ¦è§
- Outline
- ä¼ ç»æ³çº¿å¤æ©
- P+ 4 Unityï¼https://www.psoft.co.jp/jp/product/pencil/unity/
- P+å¨çº¿ææ¡£ï¼https://docs.psoft.co.jp/pus400w/jp/latest/
- 使ç¨JTRPè¿è¡è§è²å¡é渲æ
- é´å½±è²
- å 线追踪é´å½±
- 头åé´å½±
- è¸+头åçå½¢é´å½±
- 头åé«å
- è¾¹ç¼å
- Timelineï¼è§è²å¨ç»ãç¸æºå¨ç»ã表æ å¨ç»ãABC
- å®æ¶ç©çï¼https://assetstore.unity.com/packages/tools/physics/magica-cloth-160144
- HDRP / Lit Shaderææ¡£ï¼https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@10.6/manual/Lit-Shader.html
- åå¤çï¼å 线追踪GI / AO / SSRãBloomãLUTãToneMappingâ¦â¦
- 渲æè¾åº
Usages
ç±äºJTRPæ¯å¨UTSçåºç¡ä¸æ©å±èæ¥ï¼å æ¤ä½ åºè¯¥å äºè§£UTSçåºæ¬åè½ï¼https://github.com/unity3d-jp/UnityChanToonShaderVer2_Project/blob/release/legacy/2.0/Manual/UTS2_Manual_en.md
JTRP Custom Pass
主è¦æ§å¶åºæ¯å ææToon Shaderç©ä½ç渲æï¼è¥ä¸¢å¤±ååéå°ç°æ¨¡ç¶æã
å¦å¯æ§å¶**Outlineçå ¨å±è®¾ç½®**ï¼è¥ä½¿ç¨BackFace Outlineéè¦å æå¼å¼å ³ã
PostProcess Outlineå¯ä»¥ä½¿ç¨ï¼ä½å¤äºé¢è§ç¶æï¼åè½ä¸å®åï¼ä¸»è¦ç¨äºåºæ¯æè¾¹ï¼éè¿é ç½®æè´¨çæ´æ¹é¢è²ã
Geometry Outlineåªå¼åäºä¸åï¼è®¾ç½®è¾ä¸ºå¤æï¼ä¸æ¨è使ç¨ãå·²ç»æä¼åæè·¯ï¼ä½æ¯æ²¡ææ¶é´ç»§ç»å¼åï¼æç¼äººå¯ä»¥ä¸èµ·å¼åï¼ææåèè§é¢ï¼https://www.bilibili.com/video/BV1vp4y1r7sF
Pencil+ Outline 4 Unity
è§é¢æç¨éæ使ç¨æ¹æ³ï¼å®æ¹ææ¡£ï¼https://docs.psoft.co.jp/pus400w/jp/4.1.2/index.html
å¦è¦å»é¤æ°´å°åèå´éå¶è¯·è´ä¹°æ£çï¼å®ç½ï¼https://www.psoft.co.jp/jp/product/pencil/unity/ã
Material Parameters
å¦æéæ¼ï¼å¯ä»¥åèè§é¢æç¨åUTSææ¡£ï¼è¿éåªååºJTRPç¸å¯¹äºUTSçæ°å¢é¨åã
HDRP/Toon | |
---|---|
Workflow Mode | ä¼å 使ç¨ShadingGradeMapï¼å¦åä¸ä¿è¯åè½å®å ¨ |
Shadow | |
Shading Grade Map | éè¿ä¸å¼ ç°åº¦å¾æ§å¶é´å½±çèå´ãé´å½±æ¯éè¿å 线æ¹åä¸æ³çº¿æ¹åçç¹ç§¯ï¼Gradientï¼è®¡ç®ï¼éè¿å½±åGradient使æäºåºåæ´å®¹æå亮/åæãè´´å¾é¢è²é»è®¤0.5ç°è²ï¼è¶æ¥è¿ç½è²è¶å®¹æå亮ï¼ä¸º1æ¶å¸¸äº®ï¼åä¹äº¦ç¶ã |
JTRP Features | |
Is Face / Hair | 头ååè¸çå¼å
³ï¼å¦é使ç¨åå½±ãè¸å½±åè½åé¡»æ£ç¡®è®¾ç½®ã 对äºè¸æè´¨æå¼Is Faceï¼å¯¹äºå¤´åæè´¨æå¼Is Hairï¼æ®éæè´¨ä¿æé»è®¤å ³éå³å¯ã |
Hair Shadow â¦â¦ | å¨è¸æè´¨ä¸å¯¹åå½±è¿è¡è°æ´ï¼Widthæ§å¶å®½åº¦ï¼Rampæ§å¶å®½åº¦çè·ç¦»è¡°åï¼Baisæ§å¶è£åªè·ç¦» |
Hair Z Offset | å¨å¤´åæè´¨ä¸è°æ´ï¼æ§å¶å影渲ææ¶å¨è§çº¿æ¹åä¸çå移 |
Face Shadow Bias | å¨è¸æè´¨ä¸è°æ´ï¼æå¼è¸æ¥åé´å½±çé项ï¼System Shadows Self Shadows Receivingï¼æ¶è°æ´è¸çé´å½±å¨å 线æ¹åçå移ï¼å¯ä»¥è£åªæä¸äºè¿è·ç¦»ä¸æ³è¦çé´å½± |
Spherical Shadowâ¦â¦ | é«çº§é项ï¼æ§å¶çé¢åæ³çº¿ï¼éè¦é åèæ¬ä½¿ç¨ï¼åèè§é¢æç¨ |
Anti-Perspective | é«çº§é项ï¼æ§å¶åéè§å¼ºåº¦ï¼ä¸º1æ¶æ¨¡åå¨è§çº¿æ¹ååæï¼ä»èæµæ¶éè§ç¸åãå¨3Dä¸ï¼FOVè¶å¤§ï¼éè§ç¸åè¶å¤§ï¼è§è§è¶å¹¿ï¼èä¸æ¸²äºè¿½æ±è¿åæç»æï¼æ以éè¦å°½å¯è½åå°éè§ç¸åï¼æ¤åè½éåå¨åç¬å±ç¤ºæ¨¡åæ¶ä½¿ç¨ï¼å¦åä¼ä¸3Dåºæ¯ç©¿æé æ穿帮ã |
Outline | |
Outline Width Ramp | éè¿Rampæ§å¶æè¾¹å¨ä¸åè·ç¦»ä¸çç²ç» |
Environmental Lighting | |
Built-in Light Direction | 该åè½å¯ä»¥æå¨æå®å 线æ¹åï¼ä»èæ§å¶è¸å½±ãåå½±çãå¯ä»¥æé èæ¬å®ç°æ´æºè½çå 线æ¹åæ§å¶ï¼åèè§é¢æç¨ |
Hair HighLightï¼å
ç¹å»Show All propertiesåæ¢UIï¼ çè§é¢å§ï¼å®å¨æ²¡æ¶é´åäºï¼æ¬¢è¿å¥½å¿äººæ交RP | |
Screen Space Rim Lightï¼åä¸ï¼ | |
Scripts
å¦æçé®åèè§é¢æç¨
Spherical Hair High Light Helper | |
---|---|
Hair Center | 头åä¸å¿ç代çï¼å°å¤´åæ´ä½è§ä¸ºä¸ä¸ªçï¼å¨å¤´éª¨ä¸æ°å»ºä¸ä¸ªç©ºç©ä½æ¾å¨çå¿å¤ï¼ç¶åå¨å¤´åä¸æ°å»ºè¯¥èæ¬ï¼å°çå¿èµç»Hair Center |
Renderers | éæ©ä½¿ç¨è¯¥åè½çRenderer |
Center / Renderer | åçåä¸ |
Project Light Dir | å°å
线æ¹åæå½±å°2Dåç¯ä¸ãå
æºæ¹åé常ä¸å¯æ§ï¼ä½ä¸æ¸²äºä¸å¯¹è¸å½±çè¦æ±åç¸å½ä¸¥æ ¼ï¼éè¿è¿äºè®¾ç½®å¯ä»¥å°å
线æ¹åéå¶å¨ä¸ä¸ªä¸å¤´é¡¶æ¹åç¸åçåç¯ä¸ï¼é²æ¢å
æºä¹±è·ã 1. å¨è¸æè´¨ä¸å¼å¯Built-in Light Direction 2. æåºæ¯ä¸çDirectional Lightèµç»Light 3. å¨ForwardDirä¸éæ©è¸çæ£é¢æ¹åæ¯FaceCenterçåªæ ¹è½´åï¼Forwardæ¯+Zï¼Upæ¯+Yï¼Rightæ¯+X 4. è°æ´Y Offsetï¼æ转å æºæ¥çææ 5. ï¼å¯éï¼éè¿Dot Poweréæ å°Y Offsetï¼æ¨ªè½´æ¯å 线ä¸Forwardç¹ç§¯ï¼å¯ä»¥ç解为夹è§ï¼ï¼ç«è½´æ¯è¯¥å¤¹è§ä¸çY Offsetå¼ |
Camera Sync å¨ç¼è¾å¨åTimelineä¸åæ¥Scene ViewåGame Viewç¸æºï¼æ¹ä¾¿**é¢è§æ¸²æææåå¶ä½ç¸æºå¨ç»**ã | |
Game To Scene / Scene To Game | åé¢ææï¼æå¨å¤å¶ä¸ä¸ªViewçç¸æºç¶æå°å¦ä¸ä¸ªViewçç¸æº |
Mode | Game To Scene / Scene To Gameï¼èªå¨å¤å¶ç¸æºç¶æ Automaticï¼éç¨äºTimelineä¸é¢è§/ä¿®æ¹ç¸æºå¨ç» 1. éæ©åºæ¯ä¸çTimelineç»ä»¶èµç»Timeline Playable Director 2. éæ©ç¸æºçTransformèµç»Root 3. å¨Timelineä¸ææ¾ç¸æºå¨ç»ï¼æ¤æ¶Scene Viewçç¸æºä¼è·éGame Viewç¸æº 4. æ¶é´è½´å®ä½å°è¦ä¿®æ¹çç¸æºå¨ç»å ³é®å¸§å¤ï¼ç§»å¨Scene Viewç¸æºï¼æ¤æ¶Game Viewç¸æºä¼è·éScene Viewç¸æº 5. 使ç¨Update Create Key (Shift+Q)ä¿åç¸æºå ³é®å¸§ |
Real Time Style Transfer
https://www.bilibili.com/video/bv1FY4y1h7Vm
åèï¼https://blog.unity.com/technology/real-time-style-transfer-in-unity-using-deep-neural-networks
6-8ms on RTX3070 1080P
DXR Sample (Removed)
Videoï¼https://www.bilibili.com/video/BV1Tr4y1F7Pv
Light Weight ShaderGUI
ä¸ä¸ªè½»é, çµæ´», 强大çUnity Shader GUIç³»ç».
使ç¨ç®æ´çMaterialPropertyDrawerè¯æ³å®ç°åè½å¤æçShader GUI, èç大éå¼åæ¶é´, æäºä½¿ç¨åæ©å±, æææåç¾æ¯ç使ç¨ä½éª.
https://github.com/JasonMa0012/LWGUI
Model Outline Importerï¼Legacyï¼
å¯¼å ¥æµç¨å·²ç»å¤±æï¼è¯¦æ å¯ä»¥åèæ¤æç« ã
å¦è¦å¯¹ç¡¬è¡¨é¢çæå¹³æ»æ³çº¿å»ºè®®åå©DCCå·¥å ·æNormalMapï¼UTSææ¡£ä¸ä¹æ对åºä»ç»ã
Future Works
UTS3å·²ç»è¢«æ¶å½äºUnityå®æ¹Packageï¼https://github.com/Unity-Technologies/com.unity.toonshader
æªæ¥ï¼å¨UTS3æ¨åºç¨³å®çæ¬å¹¶æ¯æShaderGraphä¹åï¼æ计åå°JTRPéæ为ä¸ä¸ªçµæ´»ãè½»éçæ件ï¼ä½¿ç¨CustomNodeæCustomPassçæ¹å¼å¯¹UTS3è¿è¡éç ´åæ§æ©å±ã
Top Related Projects
Flexible framework for workflow and decision automation with BPMN and DMN. Integration with Quarkus, Spring, Spring Boot, CDI.
A compact and highly efficient workflow and Business Process Management (BPM) platform for developers, system admins and business users.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot